Testing Adventures - Software Testing & Quality Assurance Community
We are offering various software testing research by learning to help you to achieve the best quality of your web, responsive and mobile applications. Check out the latest blogs & articles on various software testing blog topics like Manual Testing Concepts, New Tools, DevOps, Scrum, Test automation, security, mobile app, and many more.
Thursday, March 10, 2022
Selenium 4
New Features and Updation in Selenium 4:
1. Selenium is now W3C compliant:
- JSON wire protocol was used to communicate between the SE Webdriver API's and the browser native APIs
- With W3C compliance. the communication happens directly without any encoding and decoding required
- Any software following W3C standard protocol can be integrated with Selenium with no compatibility issues
2. Relative Locators:
- Function to locate nearby elements by specifying directions
- Existing locator strategy
3. Better Window and Tab Management:
- Work with multiple windows or tabs in the same session
- Can now open multiple windows and tabs without creating a new driver object
4. Improved Selenium Grid:
- Enables test execution on different combinations of browsers, OS, and Machines
- Enables parallel execution
5. Upgraded Selenium IDE:
- More stable and reliable
- Improved GUI
- SIDE runner - Se IDE runner for CMD execution, grid, and node projects
- Better element locator strategy
6. New APIs for CDP (Chrome DevTools Protocol):
- Inspects element in the DOM
- Edit elements and CSS on the fly
- Check and monitor the site's performance
- Mock Faster/Slower network's speeds
- Mock geolocations of the Users
- Execute and debug JavaScript
- View console logs
- Se 4 comes with native support for Chrome DevTools API
- Capture and monitor the network traffic
- Simulate poor network conditions
- Perform geolocation testing
- Change device mode to do responsive design testing
- getDevTools()
- executeCdpCommand()
7. Deprecations of Desired Capabilities:
- Firefox - FirefoxOptions
- Chrome - ChromeOptions
- IE - InternetExplorerOptions
- Microsoft Edge - EdgeOptions
- Safari - SafariOptions
7. Modifications in the Actions class:
Monday, May 24, 2021
Tuesday, May 4, 2021
Kindly contact for online software testing courses by video conference.
Courses Available For Engineering Students:
- Software Manual Testing
- Software Automation Testing
- Selenium WebDriver
- Core Java
- BrowserStack, Mailinator, Jenkins, Jira, TestRail, and other testing related tools
Kindly contact: 1feb1986@gmail.com
You can use the contact form for any query.
Thanks: Prashant Chauhan
General Principles of Testing:
===================
- Principle 1: Testing shows the presence of defects, not their absence.
Testing can show that the product fails, i.e., that there are defects. Testing cannot prove that a program is defect-free. Adequate testing reduces the probability that hidden defects are present in the test object. Even if no failures are found during testing, this is no proof that there are no defects.
- Principle 2: Exhaustive testing is impossible.
It’s impossible to run an exhaustive test that includes all possible values for all inputs and their combinations combined with all different preconditions. Software, in normal practice, would require an “astronomically” high number of test cases. Every test is just a sample. The test effort must therefore be controlled, taking into account risk and priorities.
- Principle 3: Testing activities should start as early as possible.
Testing activities should start as early as possible in the software life cycle and focus on defined goals. This contributes to finding defects early.
- Principle 4: Defect clustering. Defects are not evenly distributed; they cluster together.
Most defects are found in a few parts of the test object. Thus if many defects are detected in one place, there are normally more defects nearby. During testing, one must react flexibly to this principle.
- Principle 5: The pesticide paradox. Insects and bacteria become resistant to pesticides.
Similarly, if the same tests are repeated over and over, they tend to lose their effectiveness: they don’t discover new defects. Old or new defects might be in program parts not executed by the test cases. To maintain the effectiveness of tests and to fight this “pesticide paradox,” new and modified test cases should be developed and added to the test. Parts of the software not yet tested, or previously unused input combinations will then become involved and more defects may be found.
- Principle 6: Testing is context-dependent.
Testing must be adapted to the risks inherent in the use and environment of the application. Therefore, no two systems should be tested in the exactly same way. The intensity of testing, test exit criteria, etc. should be decided upon individually for every software system, depending on its usage environment. For example, safety-critical systems require different tests than e-commerce applications.
- Principle 7: No failures mean the system is useful is a fallacy.
Finding failures and repairing defects does not guarantee that the system meets user expectations and needs. Early involvement of the users in the development process and the use of prototypes are preventive measures intended to avoid this problem.