Testings_IQ
41. What is difference between TC and TS?
- Test Cases are focused on what to test and how to test - Test Scenario is more focused on what to test. - Test Cases are low-level actions - Test Scenarios are high-level actions. - TC requires more resources, time for test execution - TS require fewer resources and time for test execution. - TC includes test steps, data, expected results for testing - TS includes an end to end functionality to be tested.
End-to-End Testing?
- Testing the overall functionalities of the system including the data integration among all the modules is called end-to-end testing. - This types of testing done with UAT team the most of the time.
User Acceptance Testing(UAT)?
- The application is tested for acceptability & validates the end to end business flow - After UAT, the application will be released to production - There should be specific environment for UAT.
27. What is Verification process?
- Verification is review of docs. It happens Requirement gathering & Designing steps=> - Human based checking/testing of documents - Does NOT involve code or project - Who? - Client, Business team, Architecture test this documents - Verification is the Test in the documents.
Integration Testing?
- check how will work together multiple components. 1. Defined as a type of testing where software modules are tested as a group. 2. Integrate or combine several units of codes for different functions or modules. - usually done by Developers - testing if 2 different code can be integrated together
Integration testing and who does that?
- check how will work together multiple components. • Integration testing is black box testing. Integration testing focuses on the interfaces between units, to ensure that units work together to complete a specific task. • The purpose of integration testing is to confirm that different components of the application interact with each other. Test cases are developed with the purpose of exercising the interfaces between the components. • Integration testing is considered complete, when actual results and expected results are the same. Integration testing is done after unit testing. There are mainly three approaches to do integration testing:
Code freeze?
- code freeze- when no code is pushed from environment to environment - Right before release, like 1 day ago, developers stop pushing code. This is cold freeze
What is Environment?
- dev environment - where development happens - qa / test environment - where testing happens - usually day to day testing, smoke testing etc (if you do not have staging env then regression is also running here)- staging / stage environment - this means, this is prod like environment- production environment - where the users interact with the application
User Acceptance Testing(UAT)
- is done by Users/Customer sometimes Stakeholders, after the system test has corrected all the most defects(after QA testing).-> after this the code will go to production. Types of UAT : 1. Alpha Testing : Test automation engineers(UAT team members) test the software to make sure it meets the requirement by testing end - to - end scenarios. 2. Beta Testing: Actual software user/End-user test the software to make sure it can handle tasks in real-world scenarios.
Unit & Integration testing example?
1. Unit test : Check selecting food function. 2. Unit test : Check payment function. 3. Integration test : Check selecting food function and payment function together.
Software Testing levels(4)?
1. Unit testing 2. Integration testing (coding) 3. System testing 4. User Acceptance testing (testing)
29. What is Validation process?
1. Validation is testing the app itself. 2. Validation process where actual testing is happen. There are 2 ways of validation process - test the code - test functionality It happens Coding & Testing steps=> - It is computer-based testing code (Automation ) - computer-based testing the application(Automation ) - involve human based testing the application(Manual)
28. What is Dynamic Testing?
1. Validation process: - Test the Code - developers do this testing(unit testing) - Test the functionality- can be both - manual and automated way this is where we come to the picture => test the code & software who? developers, tester does it. when? it happens coding & testing steps 2. Dynamic Testing types are - Functional - Non-Functional
40. Black Box Testing?
=> Black box testing is the software testing method which is used to test the software without knowing the internal structure of code or program. This testing is usually done to check the functionality of an application. (EX: system testing, acceptance testing, security testing etc)
Non-Functional Testing?
=> Non - Functional testing is Performance testing, Security testing => Ex. Can 2000 user's login to the application at the same time? Can user move to next page in 1 second?
end to end testing E2E
=> inside one application => while automation you have to design your scenarios in a way that they will be reusable and will be used in end to end => end to end => among application app1, app2, app3 app4, upstream application downstream applicatopn
Example of End-to-End scenario:
Login - go to one course - create a module - upload a file - check the data Base - check API - logout.
24. What is Manual Testing?
Manually testing is => - Performed by Human - Use some tools like Jira, Fire Bug.. - Manual testing helps us understand the whole product - Any new application must be manually tested before its testing can be automated.
hot fix?
When there is a very important bug has been found in production and it needs to be fixed and release right away.
API testing?
it is very important - almost every job position needs it- API testing is very fast - e.g. 2000 scenarios can run less than 5 minutes- sometimes API are ready before UI - so can test those from API before UI- some applications are purely API based
What is parking lot?
• In Agile it means this: In meeting when you have a problem that is not really relevant to other people we should not keep discussing that item in the meeting because we are wasting other people's time.< Let's make it parking lot item > means whoever is interested in that issue can talk after the meeting.
Why do we need a software testing?
✦Ensure that software is bug free ✦Ensure that system meets customer requirements ✦Ensure that system meets end-user expectations ✦Fixing the bugs identified after release is expensive ✦Testing helps in product security
33. What is the difference between Regression and Re-Test?
- Re-testing is a process => for verifying the fixes made to a specific module or an element - Regression testing is a process => for checking the effect of the changes in functionality of the software system as a whole after changes to the system has been made. But Re-test is : When there is a bug, a tester writes a bug report, and the developer fix it, Then the tester should test it again
Component Testing
- testing of each component in application is done separately. It finds the defects in the module and verifies the functioning of software. Before Integrating the components the single part has to work properly.
Test Scenario?
test scenarios - is your scenario, usually with one sentence to show what are you going to test
Usability Testing?
- Evaluates the application on how easy it is for use it.
31. What is Functional Testing?
- If we test function it is Functional Testing. - Functional testing is happen validation process - Functional testing usually describes what the system does. - Functional Testing have levels(starting from lowest level-> 1 line code is lowest level) => Functional testing team can also be called manual testers it can also be done by automation team (automation functional testing). => Similar to Black box testing or manual testers. Just testing the specific functionality of the application. Ex. Can users login? Can users logout? 1) Unit testing 2) Integration testing 3) System testing 4) UAT (User Acceptance testing)
39. White Box Testing?
- It is a method in which the internal structure, and implementation of the item is known to the tester. - in White box testing we know exactly what is happening in the code. White box technique involves selection of test cases based on an analysis of the internal structure of a component or system. It is also known as Code based testing or structural testing. Basically functional behaviour of the software is tested by the developers in order to validate their execution.
25.What is Automated Testing?
Automation testing is => - performed based on test cases(document) - and Use tools like Selenium, TestNG, - Once the test is automated, no human intervention is required.
34-38. What is Smoke Testing? Why do we need smoke test? When to test, Where do we run smoke test? How long does it take to run? How many user stories are there total? How many scenarios does your smoke test have?
- Determines whether the application is stable or not. - To check if the application up and running - Every day morning before start to work - Around 15~20 minutes - Around 6~8 user stories why we need it? => make sure the application is stable => today's code did not break yesterday's code => tester can continue the testing => where we run smoke test? - it runs in Jenkins => Tester- its run automatically, who automates the test => tester creates Smoke Testing => Smoke test rate: 100% => as a team you decide which one should be part of smoke => TS - 10/15 or 30 scenarios => Smoke suit is dynamic which means it can be differ
32.What is the Regression testing?
- Regression testing is a process => for checking the effect of the changes in functionality of the software system as a whole after changes to the system has been made. - if any new functionality is added we have to make sure the new will not break the old one. To check if the new functionality works with the old ones - Regression testing is done after functional testing has concluded, to verify that the other functionalities are working. - => how many scenarios - It depends (100-200,700-800) => where it runs - Jenkins => When - before release / or end of each Sprint => minor - every sprint => major - before release => staging => over 90 is good less than 80% is not good Regression test : 85-95%
Why there are bugs in software?
- Software is built by human beings: (who know something, but not everything who have skills, but aren't perfect who do make mistakes (errors) - Under increasing pressure to deliver to strict deadlines: (no time to check but assumptions may be wrong systems may be incomplete)
30. Unit Testing and who does that?
- the Smallest testable part, done by the developers to make sure they eliminate the bug before testers find it. - Everyone is responsible for their own Unit test. - Done by developer, it is testing the code in Small Unit - Unit Testing is a software testing method by which individual units of source code - It considered as a white box testing. In white box testing we know exactly what is happening in the code. EX: @Test public void test1() { SOUT("test one") }
What sprint 0?
- very first sprint of the project- includes research or some task to be ready for the project(sometimes teams decide to take sprint 0 in the middle of the project to catch up with some delayed work)
Positive Testing / Negative Testing
-P/ testing with valid input -N/ testing by providing invalid input. Check if app behaves as expected
Ad-Hoc Testing?
1. Performed without proper planning or documentation. 2. Also called Random Testing or Exploratory testing. 3. Ad-Hoc testing is performed with the knowledge of the tester about the application. 4. This testing is most useful when there are no or poor requirement specifications and when time is severely limited. - you do not plan, you just test the functionality, - sometimes you o not write test scenario / case
26. What is Static Testing?
1. Testing documents is called- Static Testing 2. it is just the verification process where documents have been reviewed / tested Who? - Client, Business team, Architecture test this documents When? It happens Requirement gathering & Designing steps How to test documents? 1) Review => One person individually tests someone else's document, or a group tests the documentation to find any mistake in the documentation. 2) Walk Through => Entire team sit down, whoever wrote that document, that person explains the document to the team, to get some feedback. 3) Inspection => Team will sit down together, author or any other lead or person show the last version of document to entire team. Inform the others.
Data base testing / API testing
Every application has, UI, data base, API
GUI Testing?
Graphical User Interface: Mainly test the application's: Spelling error Color Error messages Format Size of an image Etc.
Gray Box?
Gray Box testing is a hybrid of black and white box testing (Ability to test both sides). Test engineers has the knowledge of the coding section of the component and designs test cases or test data based on system knowledge.
508 Compliance Testing?
Section 509 is a requirement for government websites. For Federal agencies electronic and IT to be accessible to people with disabilities. Disability people can use it.
What is Jira?
Project Management tool
23. What is Software Testing?
Software Testing is => a method to check the Actual result is matches Expected Result - and to Ensure that SW product is Defect free.
How to test software ?
Software has 2 types to test: 1.Test Functionality like clickable? Able to select ? Able to check? 2.Test Non-functional side like security, installation, handling stress
System Testing types?
System Testing types: - GUI Testing - Smoke Testing - Usability Testing - Regression Testing Etc.
System Testing?
System testing is=> performed on the whole system by checking whether the system or application meets the requirement specification document.
User Story mapping?
User Story mapping - to understand which user stories related to each other more than others
Boundary testing?
lets say that application accepts numbers from 1 to 1000 first below boundary - 0, -1, -2 - should fail boundary and a bit above - 1, 2, 3 - should pass mid boundary - 499,500,501 - should pass up boundary - 999, 1000 - should pass above boundary - 1001, 1002 - should fail
data driven testing
for automation data is coming outside of the framework