Testing
Contents
|
Testing is extremely important for evaluating the overall health, durability, safety, security and adherence to standards of a piece of software or system.
Criteria
7 Testing Criteria:
1. Beta Testing (does it work?) 2. Usability Testing (is it simple/usable?) 3. Content Review (who can use it? practicality of material...) 4. Learning Outcomes (how does it get used/absorbed?) 5. Integration into Daily Life (when/where does it fit in existing systems/usages? i.e. training/course curriculums) 6. Impact on Daily Life (what effect does it have? i.e. medical clinic practice, scheduling appointments, send msgs) 7. Validity Testing (why do this task or add this feature? are the results relevant/valid...)
Test Strategies
Phased
The "traditional" approach to Testing is that it proceeds after (and in Waterfall strictly only after) all software, applications, supporting systems, etc have been delivered and fully integrated. At the end of the project, the time between "software works" and "software delivered to customer" is often dubbed the "Testing Phase". While this ensures that only "one major pass" of testing theoretically needs to get done, with much lower needs for frequent minor regression tests, it is often too naive to satisfy real-world (constantly changing) business needs.
Often in Agile Development environment, the Phased approach must be at the very least modified to have several "medium sized" iterative phases. Other strategies are to give up on a Phased Testing approach entirely and begin Continuous Testing.
Continuous Testing
- wikipedia: Continuous testing
- Getting started with "Headless Chrome" browser: https://developers.google.com/web/updates/2017/04/headless-chrome
- Using headless Chrome as an automated screenshot tool: https://medium.com/@dschnr/using-headless-chrome-as-an-automated-screenshot-tool-4b07dffba79a[1]
Shift Left
- wikipedia: Shift left testing
- What is Shift-left? SL Testing explained: http://www.bmc.com/blogs/what-is-shift-left-shift-left-testing-explained/
- Shift-left testing and overall quality: http://www.bitwiseglobal.com/blogs/shift-left-testing-and-overall-quality/
- What Shift-left testing means: https://smartbear.com/learn/automated-testing/shifting-left-in-testing/
- Shift-left at IBM: https://www.slideshare.net/Urbancode/shift-left
- Four types of "Shift-left" Testing: https://insights.sei.cmu.edu/sei_blog/2015/03/four-types-of-shift-left-testing.html
- Shift-left Testing not a new concept (2001 article): http://www.drdobbs.com/shift-left-testing/184404768
- Shift-left in Performance Testing: https://www.infoq.com/articles/shift-left-performance-testing
- Shift-left with Test Automation in Agile Dev environments: http://www.bcs.org/upload/pdf/shift-left-test-automation-in-agile-environments.pdf
- Shift-left - why you need to perform testing earlier in Dev cycle: https://dzone.com/articles/shift-left-approach-why-do-you-need-to-perform-ear
- We're all Testers now -- getting the organization ready for Shift-left automation: https://techbeacon.com/were-all-testers-now-5-steps-get-ready-shift-left-automation
Shift Right
- 8 Reasons to Shift Testing Right: https://www.linkedin.com/pulse/8-reasons-shift-testing-right-lanette-creamer/
- Shift-right -- Test microservices in the wild to tame DevOps: https://techbeacon.com/shift-right-test-microservices-wild-tame-devops
Types of Testing
Unit
Unit Testing (sometimes referred to as "local testing" or abbreviated UT) is a software testing method by which individual units of source code, sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures are tested to determine if they are fit for use. Intuitively, one can view a unit as the smallest testable part of an application. In procedural programming, a unit could be an entire module, but it is more commonly an individual function or procedure. In object-oriented programming, a unit is often an entire interface, such as a class, but could be an individual method. Unit tests are short code fragments created by programmers or occasionally by white box testers during the development process. Ideally, each test case is independent from the others. Substitutes such as method stubs, mock objects, fakes, and test harnesses can be used to assist testing a module in isolation. Unit tests are typically written and run by software developers to ensure that code meets its design and behaves as intended.
- wikipedia: Unit testing
- See also: jUnit
CBUT
Component-Based Usability Testing (CBUT) is a testing approach which aims at empirically testing the usability of an interaction component. The latter is defined as an elementary unit of an interactive system, on which behaviour-based evaluation is possible. For this, a component needs to have an independent, and by the user perceivable and controllable state, such as a radio button, a slider or a whole word processor application. The CBUT approach can be regarded as part of component-based software engineering branch of software engineering.
Functional
Functional Testing is a form of test upon an entire application in isolation from any external dependencies. In this sense the focus is the same as a Unit Test but the context is the entire application (minus any external dependencies) rather than its individual parts/units.
API Testing
A key form of Functional Testing is API Testing which hits an API directly without use of the application's User Interface (UI) which often invokes all phases and dependencies at once (which is more of a holistic/system-level test). Calling individual backend APIs that are depended upon by the front-end can help for monitoring the health of the application and act as a trigger as to the readiness for moving to the next stage of testing for running UI-centric system tests and/or integration. In addition, failures in Functional API Tests which are configured to run on a regular basis can be hooked into notifications to support teams to avoid time wasted on Root Cause Analysis when an area of the application fails due to a failure in a depended upon API.
- SoapUI: http://soapui.org
- Swagger Inspector -- Test & auto-generate OpenAPI documentation for any API: https://inspector.swagger.io/builder | DOCS
- Postman: https://www.getpostman.com/[4]
Integration
Integration Testing (sometimes called integration and testing, abbreviated I&T) is the phase in software testing in which individual software modules are combined and tested as a group. It occurs after unit testing and before validation testing. Integration testing takes as its input modules that have been unit tested, groups them in larger aggregates, applies tests defined in an integration test plan to those aggregates, and delivers as its output the integrated system ready for system testing.
Smoke
Smoke Testing for software is typically trying the major functions of the whole piece of software (or recently updated component) before carrying out formal testing, and comes from Smoke Testing in electrical engineering where the term literally means "looking for smoke" when powering electrical items or new connections within/between them for the first time. This type of testing is usually conducted immediately after the integration of software or components into larger systems, as such it could be considered as and conducted within either a part of Integration Testing or System Testing.
Automated
Automated Tests are repeatable, measurable and isolated test cases that can be run in unison with many other test cases with few or no dependencies. Software Tests have to be repeated often during development cycles to ensure quality. Every time source code is modified software tests should be repeated. For each release of the software it may be tested on all supported operating systems and hardware configurations. Manually repeating these tests is costly and time consuming. Once created, automated tests can be run over and over again at no additional cost and they are much faster than manual tests. Automated software testing can reduce the time to run repetitive tests from days to hours.[7][8]
- wikipedia: Test automation[9][10]
- THE Internet app: https://the-internet.herokuapp.com/ (comprehensive "generic" Webpage/WebApp functionality for Automated Testing "training/practice")</ref>[11][12][13][14]
System
System Testing of software or hardware is testing conducted on a complete, integrated system to evaluate the system's compliance with its specified requirements. System testing falls within the scope of black box testing, and as such, should require no knowledge of the inner design of the code or logic. As a rule, system testing takes, as its input, all of the "integrated" software components that have passed integration testing and also the software system itself integrated with any applicable hardware system(s). The purpose of integration testing is to detect any inconsistencies between the software units that are integrated together (called assemblages) or between any of the assemblages and the hardware. System testing is a more limited type of testing; it seeks to detect defects both within the "inter-assemblages" and also within the system as a whole.
Regression
Regression Testing is a type of software testing that seeks to uncover new software bugs, or regressions, in existing functional and non-functional areas of a system after changes such as enhancements, patches or configuration changes, have been made to them. The intent of regression testing is to ensure that changes such as those mentioned above have not introduced new faults. One of the main reasons for regression testing is to determine whether a change in one part of the software affects other parts of the software. Common methods of regression testing include rerunning previously completed tests and checking whether program behavior has changed and whether previously fixed faults have re-emerged. Regression testing can be performed to test a system efficiently by systematically selecting the appropriate minimum set of tests needed to adequately cover a particular change.
Acceptance
Tests conducted to determine if the requirements of a specification or contract are met.
UAT
User Acceptance Testing (UAT) is the process of verifying that a solution works for the user. It is not system testing (ensuring software does not crash and meets documented requirements), but rather is there to ensure that the solution will work for the user i.e. test the user accepts the solution (software vendors often refer to as Beta testing). This testing should be undertaken by a Subject-Matter Expert (SME), preferably the owner or client of the solution under test, and provide a summary of the findings for confirmation to proceed after trial or review. In software development, UAT as one of the final stages of a project often occurs before a client or customer accepts the new system. Users of the system perform tests in line with what would occur in real life scenarios. The UAT acts as a final verification of the required business functionality and proper functioning of the system, emulating real-world usage conditions on behalf of the paying client or a specific large customer. If the software works as required and without issues during normal use, one can reasonably extrapolate the same level of stability in production. User tests, usually performed by clients or by end-users, do not normally focus on identifying simple problems such as spelling errors and cosmetic problems, nor showstopper defects, such as software crashes; testers and developers previously identify and fix these issues during earlier unit testing, integration testing, and system testing phases.
A/B
In Marketing and Business Intelligence, A/B testing is jargon for a randomized experiment with two variants, A and B, which are the control and treatment in the controlled experiment. It is a form of statistical hypothesis testing with two variants leading to the technical term, Two-sample hypothesis testing, used in the field of statistics. Other terms used for this method include bucket tests and split testing but these terms have a wider applicability to more than two variants. In online settings, such as web design (especially user experience design), the goal is to identify changes to web pages that increase or maximize an outcome of interest (e.g., click-through rate for a banner advertisement). Formally the current web page is associated with the null hypothesis. As the name implies, two versions (A and B) are compared, which are identical except for one variation that might affect a user's behavior. Version A might be the currently used version (control), while Version B is modified in some respect (treatment). For instance, on an e-commerce website the purchase funnel is typically a good candidate for A/B testing, as even marginal improvements in drop-off rates can represent a significant gain in sales.
- wikipedia: A/B testing
- Optimizely: https://www.optimizely.com/ | A/B Testing
- Google Optimize: https://www.google.com/analytics/optimize/[19]
- Web Analytics Automation Testing Framework (WAAT): https://essenceoftesting.blogspot.ca/2017/10/analytics-forgotten-child.html | SRC[20][21]
- “Test What Matters: Automated Analytics Testing” – by Marcus Merrell
(WEBINAR): https://applitools.com/blog/webinar-recording-test-what-matters-automated-analytics-testing[22]
Mobile
- wikipedia: Mobile application testing
- Appium: http://appium.io/ | DOCS | SRC
- What is Mobile Testing?: https://smartbear.com/learn/software-testing/what-is-mobile-testing/
- The Essential Guideto Mobile App Testing: http://core.ecu.edu/STRG/materials/uTest_eBook_Mobile_Testing.pdf
- Mobile Testing Tutorial: https://www.tutorialspoint.com/mobile_testing/index.htm
- Introducing MAD LAB - for Mobile Automation: https://essenceoftesting.blogspot.ca/2017/04/introducing-mad-lab-for-mobile.html[23][24][25][26][27][28][29]
- The iOS Testing Manifesto: https://medium.com/@hesham.salman/the-ios-testing-manifesto-e1bc821cc4c3
Layout
Layout Testing is a form of testing focused on ensuring that responsive web designs retain the desired ratios and relative distances between page elements as resizing occurs and/or breakpoints are toggled.
- Galen Framework: http://galenframework.com (Galen is the leading OSS Layout Testing framework)
Performance
Performance Testing in software involves ensuring the quality and reliability of a particular set of that software as well as its components, and the inter-connections between them, in order to get an accurate picture of the health of the whole system. It includes a number of techniques including: Load Testing, Disaster Recovery Preparedness, High-Traffic Response Times, Failover Management, etc.
[30] [31] [32] [33] [34] [35] [36] [37]
Load Testing
Penetration Testing
Testing for Security vulnerabilities by Hacking, DDOS'ing, etc.
QA
Quality Assurance (QA) is a key aspect of the testing process and should be done throughout the development process, as new components are added.
- wikipedia: Quality Assurance
- wikipedia: Root cause
- wikipedia: Root cause analysis (abbreviated RCA)
- wikipedia: Eight Disciplines Problem Solving
- wikipedia: Seven Basic Tools of Quality
- wikipedia: Quality management system
- wikipedia: Five Ws (aka. 5 questioons... Who, What, When, Where, Why... bonus question for brainstorming/problem-solving is How)
- wikipedia: 5 Whys (aka. Why? five times... each one getting closer to the root cause and sufficient information to then form solutions)
Continuous Testing
Continuous Testing is the process of executing automated tests as part of the software delivery pipeline to obtain immediate feedback on the business risks associated with a software release candidate. For Continuous Testing to work, the scope of testing should include validation of requirements from the bottom up, as well as (if they are used) verification of User Stories to assess the realization of system requirements associated with achieving business goals that prompted codifying of the requirements in the first place.
- wikipedia: Continuous testing
- Continuous Testing - What Exactly is It?: http://java.dzone.com/articles/continuous-testing-what
TDD
Test-Driven Development (TDD) is an approach to software development where Requirements are turned into very specific test case(s), then the software is improved/enhanced to pass the new test(s). This is in contrast to more traditional software development that allows software to be added that is not proven to meet requirements by a specific passing test case/suite.
The following are the 5 steps for proper TDD:
- Add a test
- Run all tests and see if the new test fails
- Write the code
- Run tests
- Refactor code
- wikipedia: Test-driven_development
- Test Driven Development (TDD) - Best Practices Using Java Examples: https://technologyconversations.com/2013/12/24/test-driven-development-tdd-best-practices-using-java-examples-2/
BDD
Behavior Driven Development (BDD) combines practices from TDD and from Acceptance Test Driven Development (ATDD); like these, it includes the practice of writing tests first, but additionally focuses on tests which describe behavior, rather than emphasizing tests which validate or verify status of a unit of implementation. BDD requires clear understanding of the software's intended behavior and actual usage, through discussion with a project's stakeholders.
The practices of BDD include:
- Establishing goals of any stakeholders directly related to the business.
- Establishing features which will achieve those goals using feature injections.
- Establishing behavior of the application or of units of code using examples.
- Automating the selected examples to provide quick feedback, transparency & regression testing.
- wikipedia: Behavior-driven development
- Introducing BDD: https://dannorth.net/introducing-bdd/
- Translating TDD to BDD: https://lizkeogh.com/2009/11/06/translating-tdd-to-bdd/
- BDD in Action (BOOK): https://www.manning.com/books/bdd-in-action (Behavior-Driven Development for the whole software lifecycle, broadly considered "the only true step-by-step guide" to BDD)
[43] [44] [45] [46] [47] [48] [49] [50] [51] [52]
Code Coverage
Code Coverage is a measure used in software testing. It describes the degree to which the source code of a program has been tested. It is a form of testing that inspects the code directly and is therefore a form of white box testing. [53]
- EclEmma - Java Code Coverage for Eclipse: http://www.eclemma.org/ [54][55]
- Cobertura (Eclipse plugin): http://cobertura.sourceforge.net/
- Code Coverage for NetBeans modules: http://wiki.netbeans.org/CodeCoverage[56]
- Is Code Coverage Important?: http://java.dzone.com/articles/is-code-coverage-important[57]
Code Review
Code Review (also referred to as peer review) is the systematic examination of computer source code upon its being submitted (i.e. committed to SCM) for consideration for inclusion in a broader code base. It is intended to find mistakes overlooked in the initial development phase, improving the overall quality of software. Reviews are done in various forms such as pair programming, informal walkthroughs, and formal inspections.
- wikipedia: Code review
- Code Review guidelines: https://docs.google.com/document/d/101FGZ0B1QqrPKl5F9x9-2vpr4xm6ku8sGqG1nALRwKA/edit[59]
- The Code Review -- The Most Important Developer Practice: https://dzone.com/articles/the-most-important-developer-practice
- 11 Best Practices for Peer Code Review: http://support.smartbear.com/support/media/resources/cc/11_Best_Practices_for_Peer_Code_Review.pdf
- Code Review tips: https://github.com/ryanmcdermott/code-review-tips#basics
[60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71]
Static Code Analysis
- wikipedia: List_of_tools_for_static_code_analysis#Java
- PMD: https://pmd.github.io/ | DOCS - CLI[72][73][74][75][76]
- FindBugs: http://findbugs.sourceforge.net | DOCS - CLI[77][78][79]
- Checkstyle: http://checkstyle.sourceforge.net/ | DOCS - CLI[80][81][82]
- JS lint: http://jslint.com[83]
- JavaScript Lint: http://www.javascriptlint.com (different from the original JSlint)
- JShint: http://jshint.com
- ESlint: https://eslint.org
- CSS lint: http://csslint.net
- Stylelint: https://stylelint.io
- Jenkins plugins -- Static Code Analysis: https://wiki.jenkins.io/display/JENKINS/Static+Code+Analysis+Plug-ins (aggregation tool that depends on other Linters/Analyzers such as PMD, Findbugs, Checkstyle, OWASP Dependency Checker, etc)
Debugging
- The differences between Testing & Debugging: https://dzone.com/articles/the-differences-between-testing-and-debugging
- Debugging Tools for Windows: https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/debugger-download-tools
- OllyDbgG: http://www.ollydbg.de/ (native x86 app debugger)
- IDA: https://www.hex-rays.com/products/ida/ (Windows, Linux or Mac OS X hosted multi-processor disassembler and debugger)
Tools
- BrowserStack: http://www.browserstack.com/ | DEMO (by John Resig, great for testing webapps on various browser combos)[90]
- Appium: http://appium.io/ (Mobile App emulation/testing)
- iOS & Android Emulator on Windows: https://www.smartface.io/ios-and-android-emulator-on-windows/
- BrowserLab from Adobe: https://browserlab.adobe.com/ (VNC type remote access into a virtualized machine with many Device/OS/Browser combos)
- Browserling - Embed and Automate Real Browsers on Demand: https://www.browserling.com | API
- WebPageTest: http://www.webpagetest.org/ | EXAMPLE (page speed testing and optimization checker)
- Y-Slow?: https://addons.mozilla.org/en-US/firefox/addon/yslow/ (FF plugin to perform basic page load-time optimization checks and suggest speed enhancements)
- SLOCCount -- a set of tools for counting physical Source Lines of Code (SLOC) in a large number of languages of a potentially large set of programs: http://www.dwheeler.com/sloccount/
- Codility: http://codility.com/[91]
Test Management
HP QualityCenter
- HP QualityCenter: https://software.microfocus.com/en-us/products/quality-center-quality-management/overview | HELP | DOCS[92][93][94][95][96][97][98][99][100]
SpiraTest
- SpiraTeam: http://www.inflectra.com/SpiraTeam/[101] | DEMO | PLUGINS | DOCS | SUPPORT [102][103][104]
- SpiraTest/SpiraTeam -- Bug Tracking Integration: https://www.inflectra.com/Documents/SpiraTestPlanTeam%20External%20Bug%20Tracking%20Integration%20Guide.pdf[105][106]
- SpiraTest/SpiraTeam -- Web Services: http://api.inflectra.com/Spira/Services/ | SOAP[107][108] | REST[109][110]
- SpiraTest/SpiraTeam -- Automated Testing: http://www.inflectra.com/Documents/SpiraTest-Team%20Automated%20Testing%20Integration%20Guide.pdf[111][112][113][114][115][116][117][118][119][120]
- https://www.inflectra.com/Documents/SpiraTestPlanTeam-Build-Server-Integration-Guide.pdf | [ ADD-ONS]
Simulators/Emulators
- Ripple Emulator - Chrome plugin: https://chrome.google.com/webstore/detail/ripple-emulator-beta/geelfhphabnejjhdalkjhgipohgpdnoc?hl=en
- Genymotion - faster Android emulator: https://www.genymotion.com/#!/
Web Services
SOAP UI
- SOAP UI: http://www.soapui.org/[124]
- SOAP UI, Regression Testing of Human based processes, using Groovy scripts or SOAP UI Steps: http://intaliotempo.wordpress.com/2009/12/01/soap-ui-regression-testing-of-human-based-processes/
- SoapUITestCaseRunner to run SoapUI Web Service tests from JUnit: http://www.soapui.org/userguide/commandline/functional.html
- soapUI vs. JUnit: http://myarch.com/soapui-vs-junit
- Test JMS from SOAP UI: http://www.soapui.org/tutorials/jms/jms-tutorial.html
- Web Service Testing with soapUI Part 2 – A Simple Unit Test: http://qatinsights.com/?p=345
- Running soapUI Unit Tests in Hudson/Jenkins: http://blogs.sap.com/2010/12/07/running-soapui-unit-tests-in-hudson/ (Test Automation / Continuous Testing - OPTION #1 -- use [Maven SoapUI Plugin])
- Functional/headless testing via SOAP UI (for running from CLI, CI build/test server, automatically on system login, etc): https://www.soapui.org/test-automation/running-from-command-line/functional-tests.html
- Automating SoapUI test runs with Command Line Execution: https://support.smartbear.com/readyapi/docs/soapui/running/automating/cli.html
[125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140]
Load UI
Language-Specific
AJAX
- Jasmine: http://pivotal.github.com/jasmine/ (behavior-driven development framework for testing JavaScript code)[143][144][145]
Selenium
- Selenium -- Web Application: http://seleniumhq.org/ | PROJECT | FF 50.x "Portable App" (Selenium is a platform consisting of language-agnostic automated test suites, plus a Firefox IDE/plugin for recording interactions as test cases then exporting to your programming language of choice: Java/C#/Python/NodeJS, other converters exist too)[146]
- Selenium - Keyboard mappings: https://github.com/SeleniumHQ/selenium/blob/master/java/client/src/org/openqa/selenium/Keys.java
- Selenium Guide Book: https://seleniumguidebook.com (leading E-BOOK on using Selenium WebDriver in the primary programming languages)[147]
[148] [149] [150] [151] [152] [153] [154] [155] [156] [157] [158] [159] [160] [161] [162] [163] [164] [165] [166] [167] [168] [169] [170] [171] [172] [173] [174] [175] [176] [177] [178] [179] [180] [181] [182] [183] [184]
- Selenium IDE: http://docs.seleniumhq.org/projects/ide/ | PROJECT | SeleniumIDE 3.x-2.x converter(this project replaces the XUL plugin with a Web Extensions API based alternative which runs cross-browser on FF 55+/Chrome/Opera, maybe Edge later... as the original XUL-based SeleniumIDE used for the past 12 years from FF 3, stopped working in FF 55+)
[185][186] [187] [188] [189] [190] [191] [192] [193] [194] [195] [196] [197] [198] [199] [200] [201] [202] [203] [204] [205] [206] [207] [208] [209] [210] [211] [212] [213] [214] [215] [216] [217] [218] [219] [220] [221] [222] [223] [224] [225] [226] [227] [228] [229] [230] [231] [232] [233] [234] [235] [236] [237] [238] [239] [240] [241] [242] [243] [244] [245] [246] [247] [248] [249] [250] [251] [252] [253] [254] [255] [256] [257] [258] [259] [260]
- flash-selenium: https://code.google.com/archive/p/flash-selenium/ | DOWNLOAD[261][262][263][264][265]
- NodeJS Selenium: https://www.npmjs.com/package/selenium-standalone | WEB DRIVER
- flex-ui-selenium -- Selenium RC driving the tests against Flex applications: http://code.google.com/p/flex-ui-selenium/
- Selenium-Flex API - Automation for Adobe Flex applications: http://code.google.com/p/sfapi/
- Flex acceptance testing and continuous integration: http://www.blackpepper.co.uk/black-pepper-blog/Flex-acceptance-testing-and-continuous-integration.html
- Selenium in Python (WebDriver): https://pypi.python.org/pypi/selenium | DOCS[267][268][269]
- selenium4junit: http://code.google.com/p/selenium4junit/[270][271]
- Testing with PHPUnit and Selenium: http://netbeans.org/kb/docs/php/phpunit.html
[272] [273] [274] [275] [276] [277] [278] [279] [280] [281] [282] [283] [284] [285] [286] [287] [288] [289] [290] [291] [292] [293] [294] [295] [296] [297] [298] [299] [300] [301] [302] [303] [304] [305] [306] [307] [308] [309] [310] [311] [312] [313] [314] [315] [316] [317] [318] [319] [320] [321] [322] [323]
jsUnit
- jsUnit -- a unit testing framework similar to jUnit but for JavaScript: http://jsunit.net/
- jsUnit project: http://jsunit.berlios.de/
- jsUnit Test Runner (example): http://jsunit.net/runner/testRunner.html?testpage=/runner/tests/jsUnitTestSuite.html
- jsUnit Documentation: http://jsunit.net/documentation/
Firebug
- FireFox F12 Dev Tools: https://developer.mozilla.org/en-US/docs/Tools (replaced Firebug as of 2016-02-08[324])[325]
- Chrome F12 DevTools: https://developers.google.com/web/tools/chrome-devtools/
- IE 5-7 Debugger: https://www.my-debugbar.com/wiki/Doc/HomePage (Microsoft Script Debugger[326] used to be the best option but DebugBar was a popular alternative, years later it is the only workable option)[327][328]
- IE 8+ Developer Tools: https://msdn.microsoft.com/en-us/library/gg589512(v=vs.85).aspx[329][330][331][332]
- IE - Edge -- F12 Dev Tools: https://developer.microsoft.com/en-us/microsoft-edge/tools/[333][334][335]
- Safari : https://developer.apple.com/safari/tools/[336][337][338][339][340][341][342][343][344][345][346][347][348][349][350]
- Opera DevTools: http://help.opera.com/Windows/9.50/en/devtools.html[351]
FireUnit
- FireUnit: http://fireunit.org
- Unit Testing JavaScript with FireUnit: http://stephenwalther.com/blog/archive/2009/05/18/unit-testing-javascript-with-fireunit.aspx
PhantomJS
- Phantom.JS: http://phantomjs.org/
- SlimerJS: https://slimerjs.org/ (scriptable browser for Web developers)
CasperJS
- Casper.JS: http://casperjs.org/ (Navigation scripting & testing for PhantomJS and SlimerJS)
- Using CasperJS to test Picturefill (Pt.I): https://www.fourkitchens.com/blog/article/using-casperjs-test-picturefill/
- Testing JS code with CasperJS (Pt.II): https://www.fourkitchens.com/blog/article/testing-js-code-casperjs/
- Simulate user actions with CasperJS (Pt.III): https://www.fourkitchens.com/blog/article/simulate-user-actions-casperjs/
- Testing your CMS (Drupal) with CasperJS (Pt.IV): https://www.fourkitchens.com/blog/article/testing-drupal-casperjs/
JAVA
jUnit
jUnit is the leading Unit Testing framework from the xUnit family.
EasyMock
- EasyMock: http://www.easymock.org/ | CODE | DOCS[352]
- Unit testing with JUnit and EasyMock: http://www.michaelminella.com/testing/unit-testing-with-junit-and-easymock.html
[353] [354] [355] [356] [357] [358] [359]
Mockito
- Mockito: http://site.mockito.org/ | CODE | [DOCS]
[360] [361] [362] [363] [364] [365] [366] [367] [368] [369] [370] [371] [372] [373]
PowerMock
PowerMock is an extension to existing Mocking frameworks that enable testing of otherwise "untestable" areas such as:
- final objects
- static methods
- private methods
- constructors
- enums
- PowerMock: https://github.com/powermock/powermock | SRC[374][375][376][377][378][379]
- Mocks Aren't Stubs: https://martinfowler.com/articles/mocksArentStubs.html
TestNG
TestNG is a popular Java framework meant to act as a complete testing suite rather than just a basic unit testing framework like jUnit. It supports Group Testing, Testing Dependencies and Failed Test Skipping (all of which jUnit does not, without further extensions or plugins).
- TestNG: http://testng.org
- JUnit 4 Vs TestNG – Comparison: http://www.mkyong.com/unittest/junit-4-vs-testng-comparison/
- Next-Generation Testing with TestNG: http://www.artima.com/lejava/articles/testng.html
- In pursuit of code quality -- JUnit 4 vs. TestNG: http://www.ibm.com/developerworks/java/library/j-cq08296/index.html
- NetBeans IDE 7.2 Introduces TestNG: http://netbeans.dzone.com/articles/netbeans-72-introduces-testng
- TestNG Selenium: https://github.com/joshmgrant/Java-TestNG-Selenium/blob/w3c_example/src/test/java/com/yourcompany/Tests/W3CTestNG.java
t2framework
T2 is a powerful automated unit testing tool for JAVA.
- t2framework: http://code.google.com/p/t2framework/
- Automated Java testing using T2 + JUnit: http://code.google.com/p/t2framework/wiki/AutomatedTestingWithJunit
PHP
PHP Unit
- PHPUnit: http://www.phpunit.de/
- Chapter 5. The Command-Line Test Runner: http://php.find-info.ru/php/011/phpunitpg-CHP-5.html
- A short introduction to the PHPUnit test framework: http://pear.php.net/manual/en/package.php.phpunit.intro.php
- Testing with PHPUnit and Selenium: http://netbeans.org/kb/docs/php/phpunit.html?intcmp=925655
Ruby
- Watir -- Ruby library for automating tests: http://watir.com/ | DOCS (powered by Selenium/WebDriver)[380]
Flex
- FlexMojos project (build Flex with Maven): http://flexmojos.sonatype.org/
- Flex Test Coverage Kept Simple with Flexmojos: http://www.sonatype.com/people/2010/04/flex-test-coverage-kept-simple-with-flexmojos/
- Fluint - Flex Unit and Integration Testing Framework : http://code.google.com/p/fluint/
FlexUnit
- FlexUnit: http://code.google.com/p/fluint/: http://opensource.adobe.com/wiki/display/flexunit/FlexUnit
FlexMonkey
- flexmonkey -- Flex UI Testing Tool : http://code.google.com/p/flexmonkey/
FlexCover
- flexcover -- Code Coverage Tool for Flex and AIR applications: http://code.google.com/p/flexcover/
- Code Coverage with Flex: http://eyefodder.com/
HTML
- W3C Validators - QA Toolbox: http://www.w3.org/QA/Tools/
- Browser Compatibility Check for Internet Explorer Versions from 5.5 to 8: http://www.my-debugbar.com/wiki/IETester/HomePage
C++
- UnitTest++: http://unittest-cpp.sourceforge.net/
System
Quick Test Pro
- HP's Quick Test Pro (QTP) suite: http://www8.hp.com/us/en/software-solutions/software.html?compURI=1172122#tab=TAB3[381][382][383] (functional and system testing)
- Quick Test Professional (QTP) Tutorial: http://www.guru99.com/quick-test-professional-qtp-tutorial.html
Automated
- Adobe Genie - Automated UI Test tool for Adobe® ActionScript®: https://sourceforge.net/adobe/genie/wiki/Home/[384]
Sikuli
- Sikuli: http://www.sikuli.org/ | DOCS
[385] [386] [387] [388] [389] [390] [391] [392] [393] [394]
Performance
Taurus
- Taurus: http://gettaurus.org/ (Taurus improves integration/running/reporting on JMeter, Selenium and other leading testing tools)
LoadRunner
- HP LoadRunner: http://www8.hp.com/us/en/software-solutions/software.html?compURI=1175451
- LoadRunner - architecture overview: http://www.wilsonmar.com/1loadrun.htm[396]
JMeter
Apache JMeter is a 100% pure Java application designed to load test client/server software (such as a web application). It may be used to test performance both on static and dynamic resources such as static files on servers, Java Servlets, ASP.NET, PHP, CGI scripts, Java objects, databases, FTP servers, and more. JMeter can be used to simulate a heavy load on a server, network or object to test its strength or to analyze overall performance under different load types.
Additionally, JMeter can help you regression test your application by letting you create test scripts with assertions to validate that your application is returning the results you expect. For maximum flexibility, JMeter lets you create these assertions using regular expressions.
JMeter Performance Tests are stored in JMX format with the following properties (loaded in this order):
- Thread Group
- Config Element(s)
- Pre-Processor(s)
- Timer(s)
- Logic Controller(s)/Sampler(s)
- Post-Processor(s)
- Assertion(s)
- Listener(s)
The most common uses of JMeter are for Performance Testing (under typical load), Load/Stress Testing (finding maximal load), Benchmarking, Failover Testing (removing one or more "nodes" in a network to check availability/speed, etc) and Disaster Recovery (bringing nodes that were out of the Load Balancer back into service).
- Apache JMeter: https://jmeter.apache.org/ | DOCS[397]
- JMeter - architecture overview: https://wiki.apache.org/jmeter/JMeterArchitecturalOverview
- JMeter - Component reference: http://jmeter.apache.org/usermanual/component_reference.html
- JMeter - plugins: https://jmeter-plugins.org/[398]
- BlazeMeter JMX Converter: http://converter.blazemeter.com (HAR, SoapUI/XML, Selenium & JSON to JMeter's "JMX" format)
[399] [400] [401] [402] [403] [404] [405] [406] [407] [408] [409] [410] [411] [412] [413] [414] [415] [416] [417] [418] [419] [420] [421] [422] [423] [424] [425] [426] [427]
Penetration
- Skipfish - web application security scanner: https://code.google.com/p/skipfish/ | DOCS (released as OSS site reconnaisance tool by Google)[428][429][430][431]
Resources
- OpenSource Testing Tools: http://opensourcetesting.org/
- Test Pyramid: https://martinfowler.com/bliki/TestPyramid.html[432][433]
- The Practical Test Pyramid: https://martinfowler.com/articles/practical-test-pyramid.html[434][435][436][437]
- Test Driven Development (TDD): http://wiki.c2.com/?TestDrivenDevelopment
- 12 Cross-Browser Testing Tools: http://www.smashingmagazine.com/2011/08/07/a-dozen-cross-browser-testing-tools/
- The Joel Test -- 12 Steps to Better Code (measure the quality of a Development Team): http://www.joelonsoftware.com/articles/fog0000000043.html
- Short, Self Contained, Correct (Compilable), Example: http://sscce.org
- Types of software Testing: http://www.softwaretestinghelp.com/types-of-software-testing/
- Pareto Chart Template: http://www.vertex42.com/ExcelTemplates/pareto-chart.html (QA assessment tool)
- Exploring Test Driven Development: http://architects.dzone.com/articles/exploring-test-driven
- Selenium WebDriver (from Java, Python, C++, etc): http://docs.seleniumhq.org/docs/03_webdriver.jsp[438]
- User Testing Methods Comparison Chart: http://i.imgur.com/l70mclB.png[439]
- The Big List of TDD and Unit Testing Knowledge: http://dzone.com/articles/the-big-list-of-tdd-and-unit-testing-knowledge[440][441]
- Software Testing Life Cycle (STLC): http://www.buzzle.com/articles/software-testing-life-cycle.html (see STLC steps diagram)
- Software Testing Methodologies: http://www.buzzle.com/articles/software-testing-methodologies.html
- Value-Based Test Prioritization: http://dzone.com/articles/value-based-test-prioritization
- The Software Testing Wheel: http://dzone.com/articles/the-software-testing-wheel
- Keyword-driven Testing Frameworks: http://toolsqa.com/selenium-webdriver/keyword-driven-framework/introduction/[442][443][444][445][446][447]
- Device/OS/Browser combinations -- How To Use Google Analytics To Find Out What Devices Your Customers Use: https://crossbrowsertesting.com/blog/development/use-google-analytics-find-devices-customers-use/[448][449][450][451][452][453][454][455]
- PageObject -- abstractions for Automated Test Suites: https://martinfowler.com/bliki/PageObject.html
- Testing Podcast -- Round-up of leading Audio podcasts on Software Testing: https://testingpodcast.com/
Tutorials
- How To Use Steps Recorder -- Document full details about Computer Issues in Windows 10, 8, & 7 with Steps Recorder: https://www.lifewire.com/how-to-use-steps-recorder-2626159[456]
- Implementing A/B Testing: http://20bits.com/articles/implementing-ab-testing/
- Selenium Tutorial for Beginner/Tips for Experts: http://jroller.com/selenium/
- Selenium IDE Tutorial – Part 1: http://www.codediesel.com/php/selenium-ide-tutorial-part-1/
- Selenium IDE Tutorial – Part 2: http://www.codediesel.com/php/selenium-ide-tutorial-part-2/
- SoapUI Pro – How to test a Web Service: http://www.joecolantonio.com/2011/12/08/soapui-pro-–-how-to-test-a-web-service/
- 10 Tips for the SoapUI Beginner: http://www.soapui.org/Getting-Started/10-tips-for-the-soapui-beginner/All-Pages.html
- Functional Testing in SOAP UI: http://www.soapui.org/Functional-Testing/functional-testing.html
- The Difference Between a FAT and a SAT: http://www.askaboutvalidation.com/the-difference-between-a-fat-and-a-sat/
- Cause-and-Effect (aka. Fishbone) Diagram: http://erc.msh.org/quality/pstools/pscsefdg.cfm
- Pareto Analysis Step by Step: http://www.projectsmart.co.uk/pareto-analysis-step-by-step.html[457]
- Pareto Analysis - Using the 80:20 Rule to Prioritize: http://www.mindtools.com/pages/article/newTED_01.htm[458]
- Writing Java Unit Tests: http://apps.topcoder.com/wiki/display/tc/Writing+Java+Unit+Tests
- JUnit testing EJBs in embedded Glassfish in Netbeans (the hard way): http://onthefaceofthings.blogspot.de/2013/01/junit-testing-ejbs-in-embedded.html
- New jUnit annotation "Given When Then" for testing edge cases in Java: http://java.dzone.com/articles/given-when-then-java
- Easy Mocking of Your Database: http://architects.dzone.com/articles/easy-mocking-your-database-0
- Using EasyMock or Mockito: http://www.javacodegeeks.com/2012/08/using-easymock-or-mockito.html
- Why I now appreciate testing, and why you should, too: https://medium.freecodecamp.org/why-i-now-appreciate-testing-and-why-you-should-too-74d48c67ab72
- Easy Debugging with NetBeans and XDebug: http://zurmo.org/forums/index.php?/topic/921-easy-debugging-with-netbeans-and-xdebug/
- Testing mobile sites on iPhone, iPad & iOS simulator: http://css.dzone.com/articles/testing-mobile-sites-iphone
- How to use user extensions in selenium IDE? The while loop: http://www.youtube.com/watch?v=SbN92y7JMxM
- Selenium IDE Flow Control - Goto and While Loops: http://51elliot.blogspot.ca/2008/02/selenium-ide-goto.html
- Add loops to Selenium IDE scripts: http://testingfreak.com/tools/selenium/add-loop-in-selenium-script/
- Example of "while" and "endWhile" Loop Commands In Selenium IDE With Use Of User Extension: http://software-testing-tutorials-automation.blogspot.ca/2013/07/example-of-while-and-endwhile-loop.html
- SOAP UI - Web Service Sample Project (WS mocking, inspection, functional testing & load testing): http://www.soapui.org/Getting-Started/web-service-sample-project.html
- Retry web service operations with RequestHandlerRetryAdvice: http://www.dzone.com/links/r/retry_web_service_operations_with_requesthandlerr.html
- JEMMY - Java Swing GUI testing library: http://wiki.netbeans.org/Jemmy
- How to use Jemmy with JUnit in NetBeans: http://www.theserverside.com/news/thread.tss?thread_id=78380
- jUnit for SOAP clients: http://www.jroller.com/gmazza/entry/junit_for_soap_clients
- No, you don’t need to mock your SOAP Web Service to test it: http://antoniogoncalves.org/2012/10/24/no-you-dont-need-to-mock-your-soap-web-service-to-test-it/
- Web application Debugging. Java-Web, Servlets and JSP 7 (SCREENCAST): http://www.youtube.com/watch?v=XdjGQVav10M
- Writing Clean Tests (from perspective of a Java dev): http://www.petrikainulainen.net/writing-clean-tests/
- Verifying your Web Applications Works - From Unit Testing to End-To-End Testing: http://java.dzone.com/articles/verifying-your-web
- Mobile WebApplication Testing (REFCARD): http://refcardz.dzone.com/refcardz/mobile-web-application-testing
- 10 Steps To Kick-Start Your Automated Mobile Testing: http://www.dzone.com/articles/10-steps-kick-start-your
- Maven Test Isolation: http://java.dzone.com/articles/maven-test-isolation
- Introduction To JavaScript Unit Testing: http://www.smashingmagazine.com/2012/06/introduction-to-javascript-unit-testing/[459]
- Using variables with Selenium IDE: http://nickbartlett.com/using-variables-with-selenium-ide/
- Storing variables in Selenium IDE: https://webigniter.wordpress.com/2011/04/07/storing-variables-in-selenium-ide/
- How to store the content/value of xpath?: http://stackoverflow.com/questions/11010992/how-to-store-the-content-value-of-xpath
- (Unit Testing) Why and what is Arrange Act Assert?: https://web.archive.org/web/20150307051201/http://www.arrangeactassert.com/why-and-what-is-arrange-act-assert
- Stop Waiting & Start Testing With Open Source Tools: http://info.blazemeter.com/stop-waiting-start-testing-open-source-tools-ty
- A Concise Guide to Knowing What, When, and How to Load Test: http://dzone.com/articles/how-much-load-can-your-site-handle-a-concise-guide
- jMeter Intro: http://2min2code.com/articles/jmeter_intro
- A Load Tester’s Guide to JMeter & BlazeMeter: https://blazemeter.com/blog/load-tester%E2%80%99s-guide-jmeter-and-blazemeter
- Application (and Mobile) Quality Maturity: http://docs.perfectomobile.com/docs/resources/infographic/5-stages-of-mobile-quality-maturity-ig.pdf
- Effective and Affordable Load Testing Using JMeter: http://omerio.com/2011/05/22/effective-and-affordable-load-testing-using-jmeter/
- Introduction to JMeter: http://www.guru99.com/introduction-to-jmeter.html
- JMeter Ant Task: http://www.programmerplanet.org/projects/jmeter-ant-task/
- JMeter Tutorials Series – Learn Load & Performance testing using JMeter in 11 days: http://www.softwaretestingclass.com/learn-jmeter-performance-testing-jmeter-tutorial-series/[460]
- How to use Timers in JMeter: http://www.guru99.com/timers-jmeter.html
- How to use Controllers in JMeter: http://www.guru99.com/controllers-in-jmeter.html
- How to Convert SoapUI XML to JMeter JMX: https://dzone.com/articles/how-to-convert-soapui-xml-to-jmeter-jmx
- SpiraTeam, the Simple Alternative to HP ALM: https://www.inflectra.com/SpiraTeam/Highlights/HP-ALM-vs-SpiraTeam.aspx
- Getting Node.js Testing and TDD Right: http://blog.codeship.com/getting-node-js-testing-and-tdd-right/
External Links
- wikipedia: Category:Software testing
- wikipedia: Test plan
- wikipedia: Test method
- wikipedia: Test Management Approach (TMap)
- wikipedia: Manual tests
- wikipedia: System testing vs acceptance testing
- wikipedia: Enterprise risk management (ERM)
- wikipedia: Swiss cheese model
- wikipedia: Physical test
- wikipedia: Pair testing
- wikipedia: All-pairs testing
- wikipedia: Software testability
- wikipedia: Web testing
- wikipedia: Web server benchmarking
- wikipedia: Game testing
- wikipedia: Test automation
- wikipedia: Test-driven development
- wikipedia: Quality control
- wikipedia: Six Sigma (branded methodology & certification label for Software Quality & Testing)
- wikipedia: Verification and validation
- wikipedia: Formal verification
- wikipedia: Proof of concept (commonly abbreviated PoC)
- wikipedia: Software release life cycle
- wikipedia: Independent test organization (preference to have a neutral, non-invested 3rd party to do all or specific - i.e. Performance - phases of testing of a product/service/system)
- wikipedia: Seven Basic Tools of Quality
- Software Quality at Top Speed: http://www.stevemcconnell.com/articles/art04.htm
- Professional Quality Assurance (PQA): http://www.pqatesting.com/
- Can You Explain a Sample JUnit Test Case Class?: http://sqa.fyicenter.com/FAQ/JUnit/Can_You_Explain_a_Sample_JUnit_Test_Case_Class_.html
- Mocks Aren't Stubs (the differences explained): http://martinfowler.com/articles/mocksArentStubs.html#TheDifferenceBetweenMocksAndStubs
- Why Evangelising Unit Testing Needs to Stop: http://java.dzone.com/news/why-evangelising-unit-testing-
- Testing Your Flex Applications by Michael Labriola on Adobe TV: http://tv.adobe.com/watch/max-2008-develop/testing-your-flex-applications-by-michael-labriola/
- DAO Refactoring -- New unit tests: http://blog.restafarian.org/2009/04/dao-refactoring-new-unit-tests/
- Can your Selenium do that? Testing flash/flex and silverlight in web apps with iMacros: http://www.pathf.com/blogs/2009/04/can-your-selenium-do-that-testing-flashflex-and-silverlight-in-web-apps-with-imacros/
- Ajax Testing -- Doubling Down with Selenium and JMeter: http://www.pathf.com/blogs/2008/04/ajax-testing-do/
- CodeCoverage Plugin Tutorial: http://wiki.netbeans.org/TutorialCodeCoveragePlugin?intcmp=925655
- How To Ask Questions The Smart Way: http://www.catb.org/~esr/faqs/smart-questions.html
- What is "Done"?: http://kaczanowscy.pl/tomek/2010-05/what-is-done
- Evil Unit Tests: http://www.javaranch.com/journal/200603/Journal200603.jsp#a1
- JUnit + Jtest = Automated Test Case Design and Static Analysis: http://www.devx.com/Java/Article/15625/1954
- Does Jtest make the grade?: http://www.javaworld.com/jw-03-2001/jw-0323-lw-jtest.html?page=1
- Using the Embedded EJB Container to Test Enterprise Applications: http://netbeans.org/kb/docs/javaee/javaee-entapp-junit.html?intcmp=925655
- We Can’t (reliably) Measure Anything in Software Development: http://java.dzone.com/node/130159/
- End-To-End Developer Testing: http://www.drdobbs.com/tv/1813092199001
- The Secondary Effects of Automated Testing: http://www.drdobbs.com/tv/1809012403001 (author of "Working Effectively with Legacy Code")
- How cool is integration testing with Spring+Hibernate: http://dinukaroshan.blogspot.ca/2012/11/how-cool-is-integration-testing-with.html
- Java 7 Code Coverage for NetBeans: http://netbeans.dzone.com/articles/jacocoverage-java-7-code
- Can your Selenium do that? Testing flash/flex and silverlight in web apps with iMacros: http://pathfindersoftware.com/2009/04/can-your-selenium-do-that-testing-flashflex-and-silverlight-in-web-apps-with-imacros/
- Excuses For Not Testing: http://java.dzone.com/articles/excuses-not-testing
- What Do Software Defects Really Cost? The $2.3 Billion Bug: http://blog.parasoft.com/cost-of-software-defects
- Decorator Design Pattern in Automation Testing: http://dzone.com/articles/decorator-design-pattern-in-automation-testing
- The Testing Center of Excellence is Dead: http://dzone.com/articles/the-testing-center-of-excellence-is-dead
- Notes on Testing Java EE: https://www.youtube.com/watch?v=x4Fxur-0SB0
- Selective Unit Testing – Costs and Benefits: http://blog.stevensanderson.com/2009/11/04/selective-unit-testing-costs-and-benefits/
- JUnit - Testing Private Methods and Fields: http://markreddy.ie/junit-testing-private-methods-and-fields/
- Integrating SOAP UI with JUnit: http://www.soapui.org/Test-Automation/integrating-with-junit.html
- Unit-Testing of Web-Services with JUnit - SOAP Services: https://www.paluch.biz/blog/53-unit-testing-of-web-services-with-junit-soap-services.html
- Testing Web Services from JUnit using SoapUI: http://opensourcesoftwareandme.blogspot.ca/2012/10/testing-web-services-from-junit-using.html
- Software Test Automation with Java, PhantomJS and Selenium: http://rumandrye.wordpress.com/2013/03/12/software-test-automation-with-java-phantomjs-and-selenium/
- When Do You Stop Testing?: https://dzone.com/articles/when-do-you-stop-testing
- What’s the Right Ratio Between QA Testers and Developers?: http://dzone.com/articles/whats-the-right-ratio-between-qa-testers-and-devel-2
- iOS 10 Is About to Disrupt Mobile Testing Plans: https://dzone.com/articles/ios-10-is-about-to-disrupt-mobile-testingnbspplans
- Mobile Test coverage: https://dzone.com/storage/assets/4249372-perfecto-device-magazine-the-digital-test-coverage.pdf
- Diminishing Returns in software development and maintenance: http://swreflections.blogspot.ca/2011/11/diminishing-returns-in-software.html
- Test Pyramid: https://martinfowler.com/bliki/TestPyramid.html
- What is the Right Ratio of Software Developers to Testers?: https://www.softwaretestpro.com/what-is-the-right-ratio-of-software-developers-to-testers/
- Just Say No to More End-to-End Tests: https://testing.googleblog.com/2015/04/just-say-no-to-more-end-to-end-tests.html
- Xray for Jira - How to automate your QA process: https://www.slideshare.net/XpandIT/xray-for-jira-how-to-automate-your-qa-process
- Software Defects - Do Late Bugs Really Cost More?: https://developers.slashdot.org/story/03/10/21/0141215/software-defects---do-late-bugs-really-cost-more
- The Cost of Fixing Bugs in Production: https://www.genrocket.com/the-cost-of-fixing-bugs-in-production/
- Quantifying The Cost of Fixing vs Preventing Bugs: http://www.newelectronics.co.uk/article-images/65147/Vector_PDF.pdf
- The True Cost of a Software Bug -- Part I: http://blog.celerity.com/the-true-cost-of-a-software-bug
- Examining the Agile Cost of Change Curve: http://www.agilemodeling.com/essays/costOfChange.htm
- Why You Should Stop Testing Every Class NOW: https://dzone.com/articles/why-you-should-stop-now-testing-every-class
- What Is Refactoring? (and Testing's role within it): https://dzone.com/articles/what-is-refactoring
- Two years with no testers -- What I learned: https://techbeacon.com/two-years-no-testers-what-i-learned
- Top 10 Testing Frameworks and Libraries for Java Developers: https://dzone.com/articles/10-essential-testing-tools-for-java-developers
- Modularity and testability: http://www.codingthearchitecture.com/2014/10/01/modularity_and_testability.html
References
- ↑ How do I use Headless Chrome in Chrome 60 on Windows 10?: https://stackoverflow.com/questions/45364102/how-do-i-use-headless-chrome-in-chrome-60-on-windows-10
- ↑ Continuous Testing -- Your Ultimate Summer Reading Guide : https://dzone.com/articles/continuous-testing-your-ultimate-summer-reading-gu
- ↑ What does “DAMP not DRY” mean when talking about unit tests?: https://stackoverflow.com/questions/6453235/what-does-damp-not-dry-mean-when-talking-about-unit-tests
- ↑ Testing APIs Using Postman: https://dzone.com/articles/testing-apis-using-postman
- ↑ Karate framework -- REST API testing made easy!: https://aboullaite.me/karate-framework-rest-testing/
- ↑ Integrated Tests Are A Scam: http://blog.thecodewhisperer.com/permalink/integrated-tests-are-a-scam
- ↑ Why Automated Testing?: http://support.smartbear.com/articles/testcomplete/manager-overview/
- ↑ Verification and Validation in Automated Testing: http://dzone.com/articles/verification-and-validation-in-automated-testing
- ↑ Automated Front-end Testing (PRESENTATION): https://rupl.github.io/frontend-testing/#/
- ↑ Top 15 Benefits of Automated Testing Tools: http://dzone.com/articles/top-15-benefits-of-automated-testing-tools
- ↑ PHP Travels: https://phptravels.com/demo/ (sample PHP application for Automated Testing "training/practice")
- ↑ Address Book example: https://address-book-example.herokuapp.com (good example where all functionality is completely behind Sign Up & Login processes)
- ↑ Automation Practice (PHP-based) site: http://automationpractice.com/index.php?id_product=1&controller=product
- ↑ BlazeMeter demo site: http://blazedemo.com/
- ↑ Eradicating Non-Determinism in Tests: https://martinfowler.com/articles/nonDeterminism.html
- ↑ Flaky Tests at Google and How We Mitigate Them: https://testing.googleblog.com/2016/05/flaky-tests-at-google-and-how-we.html
- ↑ What is Acceptance Testing?: https://www.tutorialspoint.com/software_testing_dictionary/acceptance_testing.htm
- ↑ How to Dockerize your End-to-End acceptance tests: https://medium.freecodecamp.org/how-to-dockerize-your-end-to-end-acceptance-tests-dbb593acb8e0
- ↑ The Beginner’s Guide to Google Optimize: https://conversionxl.com/blog/google-optimize/
- ↑ Analytics Testing: https://essenceoftesting.blogspot.ca/2017/03/analytics-testing.html
- ↑ WAAT 2.0 (BETA) available for use: https://essenceoftesting.blogspot.ca/2016/09/waat-20-beta-available-for-use.html
- ↑ ProxyManager class, for managing your BrowserMob proxy, manipula: ting HAR files, etc https://gist.github.com/mmerrell/f3409f5e9366cb62457f100bc92d46ba
- ↑ A new beginning - entertainment on mobile: https://essenceoftesting.blogspot.in/2016/12/a-new-beginning-entertainment-on-mobile.html
- ↑ How to enable seamless running of appium tests on developer machines?: https://essenceoftesting.blogspot.in/2016/12/how-to-enable-seamless-running-of.html
- ↑ Features of my Android Test Automation Framework: https://essenceoftesting.blogspot.in/2017/02/features-of-my-android-test-automation.html
- ↑ How to upgrade the appium-uiautomator2-driver version for appium 1.6.3?: https://essenceoftesting.blogspot.in/2017/02/how-to-upgrade-appium-uiautomator2.html
- ↑ Finding my way out of bottomless pit with Appium & Android 7.0 for parallel test runs: https://essenceoftesting.blogspot.in/2017/02/finding-my-way-out-of-bottomless-pit.html
- ↑ Sharing implementation of cucumber-jvm - Appium test framework: https://essenceoftesting.blogspot.in/2017/02/sharing-implementation-of-cucumber-jvm.html
- ↑ Features of my Android Test Automation Framework: https://essenceoftesting.blogspot.ca/2017/02/features-of-my-android-test-automation.html
- ↑ Performance Testing resources - Articles, Books & Papers: http://www.perftestplus.com/pubs.htm
- ↑ How to interpret and report your performance test results (so people actually read them): https://www.soasta.com/blog/how-to-interpret-report-performance-test-results/
- ↑ Mobile Load Testing -- The Next Phase in Mobile Testing: http://dzone.com/articles/mobile-load-testing-the-next-phase-in-mobile-testi-1
- ↑ Front-End Performance -- The Dark Side: https://dev.opera.com/blog/timing-attacks/
- ↑ Web Performance Talk (Mobile .vs. Desktop) - April 2016: https://docs.google.com/presentation/d/11fLFu-Mq5zM3wAfZkMbEzJSu6dy9cp2HH0njU11OPPI/
- ↑ Performance Test Results 2016: https://www.slideshare.net/fullscreen/eproegler/interpreting-performance-test-results/
- ↑ Top Performance Metrics for Java, .NET, PHP, Node.js, and Python: https://dzone.com/articles/top-performance-metrics-for-java-net-php-nodejs-an
- ↑ Automated Performance Tests in Jenkins CI Environments: http://dzone.com/articles/automated-performance-tests-in-jenkins-ci-environm
- ↑ Top 10 Free Hacking Tools for Penetration Testers: https://dzone.com/articles/top-10-free-hacking-tools-for-penetration-testers
- ↑ TDD .vs. BDD: http://www.developmentthatpays.com/files/DevelopmentThatPays-TDDvsBDD-CheatSheet-1-4.pdf
- ↑ Why TDD?: https://builttoadapt.io/why-tdd-489fdcdda05e
- ↑ 8 Observations On Test Driven Development: https://medium.com/@solidi/8-observations-on-test-driven-development-a9b5144f868
- ↑ Behaviour Driven Development (BDD): https://dzone.com/articles/behaviour-driven-development-bdd-1
- ↑ BDD: https://www.agilealliance.org/glossary/bdd/
- ↑ Behavior Driven Development (SLIDES): https://www.slideshare.net/marakana/behavior-driven-development-11222326
- ↑ BDD Using Cucumber JVM and Groovy (PRESENTATION): https://www.infoq.com/presentations/bdd-cucumber-groovy
- ↑ Selenium Integration with Cucumber BDD Tool : https://www.youtube.com/watch?v=Vv7hHrVX_Zg
- ↑ Test-Driven Development (TDD) .vs. Behaviour-Driven Development (BDD): https://businessanalystlearnings.com/technology-matters/2014/8/13/test-driven-vs-behaviour-driven-development
- ↑ Behaviour-Driven Development: https://www.future-processing.pl/blog/behaviour-driven-development/
- ↑ What are the different Agile Testing Methodology? Test Driven Development, Behavior Driven Development: http://istqbexamcertification.com/what-are-the-different-agile-testing-methodology-test-driven-development-behavior-driven-development/
- ↑ TDD and BDD in Java 8 - what's in it for me?: https://www.slideshare.net/wakaleo/tdd-and-bdd-in-java-8-whats-in-it-for-me
- ↑ Behavior Driven Development - BDD (YOUTUBE PLAYLIST): https://www.youtube.com/playlist?list=PLngnoZX8cAn9kbu_bI_YUCZIkrcyIG_M6
- ↑ To-Do app to demonstrate "SubSecond" BDD Framework tests: https://github.com/subsecondtdd/todo-subsecond
- ↑ wikipedia: Code coverage
- ↑ Java code coverage reports in Eclipse: http://margelatu.org/2009/06/25/java-code-coverage-reports-in-eclipse/
- ↑ Code Coverage for Free - How to Use EMMA: http://www.developer.com/mgmt/article.php/3678041/Code-Coverage-for-Free-How-to-Use-EMMA.htm
- ↑ Installing and using Code Coverage plugin in NetBeans 6.5: http://newsintegrator.wordpress.com/2008/11/26/installing-and-using-code-coverage-plugin-in-netbeans-65/
- ↑ Is 100% Code Coverage Possible?: http://java.dzone.com/articles/100-code-coverage-possible
- ↑ An Introduction to Code Coverage: https://dzone.com/articles/an-introduction-to-code-coverage
- ↑ 5 Code Review Tricks the Experts Use - Based on 3.2 Million Lines of Code: http://dzone.com/articles/5-code-review-tricks-the-experts-use-based-on-32-m (based on Cisco & OverOps commissioned studies)
- ↑ Code Reviews -- A Framework for Startups: https://summify.wordpress.com/2011/09/21/code-reviews-a-framework-for-startups/
- ↑ The only valid measure of "Code Quality" - Daily WTFs or WTFs/min: http://www.osnews.com/story/19266/WTFs_m
- ↑ wikipedia: Principle of least astonishment (POLA)
- ↑ What does it mean to write “good code”?: https://softwareengineering.stackexchange.com/questions/17443/what-does-it-mean-to-write-good-code
- ↑ What Is Clean Code? – In Quotes: https://theholyjava.wordpress.com/2012/12/15/what-is-clean-code-quotes/
- ↑ How to Evaluate Software Quality from Source Code: https://www.daedtech.com/evaluate-software-quality-source-code/
- ↑ The 10 Pull Request Commandments: https://medium.com/@dsteplight/the-10-pull-request-commandments-d512b8c881bc
- ↑ The Art of Pull Requests: https://hackernoon.com/the-art-of-pull-requests-6f0f099850f9
- ↑ How to Do Code Reviews Like a Human: https://mtlynch.io/human-code-reviews-1/
- ↑ How 680 Developers Say We Can Increase Code Quality: https://hackernoon.com/how-680-developers-say-we-can-increase-code-quality-339908809d19
- ↑ Unlearning toxic behaviors in a code review culture: https://medium.freecodecamp.org/unlearning-toxic-behaviors-in-a-code-review-culture-b7c295452a3c
- ↑ The Rule of Three (and code re-use .vs. refactoring for more reusability): https://blog.codinghorror.com/rule-of-three/
- ↑ Apache Maven plugin - PMD: https://maven.apache.org/plugins/maven-pmd-plugin/
- ↑ PMD-Jenkins -- how to use it: https://stackoverflow.com/questions/17294515/pmd-jenkins-how-to-use-it
- ↑ PMD Eclipse Tutorial: https://www.javatips.net/blog/pmd-in-eclipse-tutorial?view=all
- ↑ Running all PMD rulesets from command line: https://stackoverflow.com/questions/23116108/running-all-pmd-rulesets-from-command-line
- ↑ How to generate reports in PMD using: Command Linehttps://stackoverflow.com/questions/9682149/how-to-generate-reports-in-pmd-using-command-line
- ↑ Apache Maven plugin - FindBugs: https://gleclaire.github.io/findbugs-maven-plugin/usage.html
- ↑ Tutorial on using FindBugs with Maven: https://gualtierotesta.wordpress.com/2015/06/14/tutorial-using-findbugs-with-maven/
- ↑ FindBugs Maven Plugin Tutorial: https://www.petrikainulainen.net/programming/maven/findbugs-maven-plugin-tutorial/
- ↑ Apache Maven plugin - Checkstyle: http://maven.apache.org/plugins/maven-checkstyle-plugin/
- ↑ Checkstyle vs PMD vs Findbugs: http://continuousdev.com/2015/08/checkstyle-vs-pmd-vs-findbugs/
- ↑ Using the Checkstyle, PMD, and FindBugs Reports: https://www.safaribooksonline.com/library/view/jenkins-the-definitive/9781449311155/ch09s05.html
- ↑ The Ultimate List of 38 JavaScript Tools: https://hackernoon.com/the-ultimate-list-of-javascript-tools-e0a5351b98e3
- ↑ Automate Your Code Reviews with Static Code Analysis: https://blog.codacy.com/automate-your-code-reviews-with-static-code-analysis-7d8ab0c81b03
- ↑ The Wise Developer's Guide to Static Code Analysis featuring FindBugs, Checkstyle, PMD, Coverity and SonarQube: https://zeroturnaround.com/rebellabs/developers-guide-static-code-analysis-findbugs-checkstyle-pmd-coverity-sonarqube/
- ↑ Static Code Analysis – (automating with) Jenkins: http://www.treselle.com/blog/static-code-analysis-jenkins/
- ↑ Lint your CSS with stylelint: https://css-tricks.com/stylelint/
- ↑ Review of CSS Linting Tools: https://blog.codacy.com/review-of-css-linting-tools-760ae1baade2
- ↑ 10 CSS and JavaScript Linting Tools for Code Optimization: https://www.hongkiat.com/blog/code-optimization-css-js-linting-tools/
- ↑ Integrating Selenium with Jenkins and BrowserStack: https://www.browserstack.com/automate/jenkins
- ↑ Test developer candidates with Codility: http://www.techrepublic.com/blog/programming-and-development/test-developer-candidates-with-codility/5999
- ↑ wikipedia: HP Quality Center
- ↑ Intro to Quality Center: https://www.guru99.com/hp-alm-introduction.html
- ↑ Real Time HP ALM (Quality Center) Live Project https://www.guru99.com/live: -interactive-exercise-hp-alm.html
- ↑ HP Quality Center (QC) Tutorial: https://www.tutorialspoint.com/qc/index.htm
- ↑ Basics of HP Quality Center: https://www.youtube.com/watch?v=9pxDS35D19Q
- ↑ HP Quality Center practical demo (older version): https://www.youtube.com/watch?v=8QiTvksJies
- ↑ HP Software Demo -- Quality Center with Business Process Modeling: https://www.youtube.com/watch?v=KYUq2Axejjk
- ↑ HP QC/ ALM 12.5 Overview Session1 (Class Recording): https://www.youtube.com/watch?v=BZ78yyATYXE
- ↑ HP ALM Quality Center Tool Tutorial (7 In-depth Tutorials): http://www.softwaretestinghelp.com/learn-hp-quality-center-qc-in-4-days/
- ↑ SpiraTest: http://www.inflectra.com/SpiraTest/
- ↑ The Inflectra Training Pyramid - Test certifications: http://www.inflectra.com/Ideas/Entry/434.aspx
- ↑ ISP-100 -- Spira Fundamentals Certification: http://www.inflectra.com/Support/KnowledgeBase/KB237.aspx
- ↑ SpiraTest 5 Revised Designs for Test Execution: https://www.inflectra.com/Ideas/Entry/343.aspx
- ↑ Troubleshooting the Data-Synchronization between SpiraTest and Jira: https://www.inflectra.com/Support/KnowledgeBase/KB265.aspx
- ↑ Integrating SpiraTest, SpiraPlan or SpiraTeam Hosted with JIRA On-Demand: https://www.inflectra.com/Support/KnowledgeBase/KB53.aspx
- ↑ Spira DEMO -- SOAP Web Services: http://api.inflectra.com/Spira/Services/v4_0/ImportExport.svc
- ↑ How to access Spira v4.x SOAP web services using Java: http://www.inflectra.com/Support/KnowledgeBase/KB49.aspx
- ↑ Spira DEMO - REST:http://api.inflectra.com/Spira/Services/v4_0/RestService.aspx
- ↑ Not able to access WSDL on test instance: https://www.inflectra.com/Support/Forum/spirateam/issues-questions/530.aspx (config changes to set "httpGetEnabled" to "false" and "httpsGetEnabled" to "true" in order to run SpiraTest/Team Web Services on HTTPS rather than HTTP)
- ↑ Running Selenium WebDriver Scripts using RemoteLaunch and JUnit: http://www.inflectra.com/Support/KnowledgeBase/KB140.aspx
- ↑ Running Selenium WebDriver Scripts using RemoteLaunch and TestNG: https://www.inflectra.com/Support/KnowledgeBase/KB148.aspx (with exact comman-line run command example)
- ↑ Running Selenium IDE Scripts using RemoteLaunch: http://www.inflectra.com/Support/KnowledgeBase/KB108.aspx
- ↑ Does the SpiraTest JUnit integration library support parameterized tests?: https://www.inflectra.com/Support/Forum/spiratest/issues-questions/1213.aspx (not without custom modifications)
- ↑ JUnit Integration with Hosted version: https://www.inflectra.com/Support/Forum/integrations/unit-testing/704.aspx (trouble with FW/Proxies)
- ↑ Import Test Runs from JUnit Formatted XML: https://www.inflectra.com/Support/Forum/integrations/importers/287.aspx
- ↑ Spiratest and JUnit Automated Tests: https://www.inflectra.com/Support/Forum/spiratest/best-practices/823.aspx
- ↑ Running Selenium WebDriver Scripts using RemoteLaunch and JUnit: http://www.inflectra.com/Support/KnowledgeBase/KB140.aspx
- ↑ Selenium RC not passing the test results to Spira: https://www.inflectra.com/Support/Forum/spiratest/issues-questions/922.aspx
- ↑ How to run a cross-browser test on a mobile device?: https://www.inflectra.com/Support/KnowledgeBase/KB278.aspx (only available when using Inflectra Rapise with Cloud-based Appium Mobile Test tool)
- ↑ Jenkins plugin: https://www.inflectra.com/Support/Forum/spirateam/issues-questions/1014.aspx (Jenkins integration to SpiraTest/Team requires SpiraTest/Team v4.0+)
- ↑ SpiraTest Jenkins Integration: https://www.inflectra.com/Support/Forum/spiratest/issues-questions/656.aspx
- ↑ Setting Up a TestOps Environment Using Selenium WebDriver and JavaScript.: https://www.inflectra.com/Ideas/Whitepaper/Setting-Up-a-TestOps-Environment-Using-Selenium-WebDriver-and-JavaScript.aspx
- ↑ 10 Tips for the SoapUI Beginner: http://www.soapui.org/getting-started/10-tips-for-the-soapui-beginner.html
- ↑ SoapUI Command Line Execution: https://testarenablog.wordpress.com/2016/08/13/soapui-command-line-execution/
- ↑ Adding HTTP Authentication to SoapUI testrunner.sh test cases: https://www.igorkromin.net/index.php/2016/09/01/adding-http-authentication-to-soapui-testrunnersh-test-cases/
- ↑ Running Functional Tests: https://www.soapui.org/test-automation/running-functional-tests.html
- ↑ Integrating SoapUI with JUnit: https://www.soapui.org/test-automation/junit/junit-integration.html
- ↑ JUnit-Style HTML Reports : https://www.soapui.org/reporting/generating-html-reports.html
- ↑ JUnit report output in TEST-*.xml format: https://community.smartbear.com/t5/SoapUI-Open-Source/JUnit-report-output-in-TEST-xml-format/td-p/6513
- ↑ Data Export (after CI runs): https://www.soapui.org/reporting/exporting-data.html
- ↑ testrunner.sh, groovy scripts in scripts dir not found: https://community.smartbear.com/t5/SoapUI-Pro/Res-testrunner-sh-groovy-scripts-in-scripts-dir-not-found/td-p/37562
- ↑ SoapUI -- testrunner.sh - takes only one .xml file as input?: http://stackoverflow.com/questions/10937407/soapui-testrunner-sh-takes-only-one-xml-file-as-input
- ↑ TestRunner – soapUI project execution from command line: https://learnsoapui.wordpress.com/2011/05/17/testrunner-soapui-project-execution-from-command-line/
- ↑ execute soapui project with maven and Jenkins: https://sqa.stackexchange.com/questions/27141/execute-soapui-project-with-maven-and-jenkins/27143
- ↑ Automated REST web services using SOAPUI: https://taquimon.wordpress.com/2015/03/02/automated-rest-web-services-using-soapui/
- ↑ How to integrate SoapUI with Jenkins / Hudson?: https://stackoverflow.com/a/6656838
- ↑ How to install SoapUI using command line on linux: https://community.smartbear.com/t5/SoapUI-Open-Source/How-to-install-SoapUI-using-command-line-on-linux/td-p/21188 (HINT: use the -c run-time parameter when running the installer)
- ↑ jQuery, SOAP, Ajax and updated UI for WS Testing workflow: http://intaliotempo.wordpress.com/2009/04/03/jquery-soap-ajax-and-updated-ui-for-workflow/
- ↑ API Testing With Cucumber (BDD) based jUnit tests - Configuration Tips: https://dzone.com/articles/api-testing-with-cucumber-bdd-configuration-tips
- ↑ SoapUI/LoadUI - Running Tests on Locked Computers: https://support.smartbear.com/viewarticle/74665/
- ↑ Using SoapUI with LoadUI from command-line: https://www.soapui.org/load-testing/command-line-execution.html
- ↑ Testing Your JavaScript with Jasmine: http://net.tutsplus.com/tutorials/javascript-ajax/testing-your-javascript-with-jasmine/
- ↑ Unit test JavaScript applications with Jasmine: http://www.adobe.com/devnet/html5/articles/unit-test-javascript-applications-with-jasmine.html
- ↑ Jasmine and jQuery: http://a-developer-life.blogspot.ca/2011/05/jasmine-part-1-unit-testing-javascript.html
- ↑ Selenium Project WebDriver Test Results: https://webdriver-herald.herokuapp.com
- ↑ What is the best book to learn Selenium?: https://www.quora.com/What-is-the-best-book-to-learn-Selenium
- ↑ Kantu - "SeleniumIDE Lite" for Chrome: https://a9t9.com/kantu/web-automation/chrome | SeleniumIDE original download for reference + FF <= 54 a Selenium
- ↑ WebDriver test automation is like giving directions (Selenium Test Suites/Cases) to a taxi driver (WebDriver) who drives a car (browser): http://test-able.blogspot.ca/2016/01/webdriver-test-automation-like-taxi-driving.html
- ↑ Adding Executables to your PATH: https://seleniumhq.github.io/docs/wd.html#adding_executables_to_your_path
- ↑ Selenium -- Internet Explorer Driver required setup steps: https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver#required-configuration
- ↑ Selenium Grid Extras: https://github.com/groupon/Selenium-Grid-Extras
- ↑ Awesome Selenium links: https://github.com/christian-bromann/awesome-selenium
- ↑ RocketPoweredJetPants -- Selenium/TestAutomation-focused blog: http://blog.rocketpoweredjetpants.com/
- ↑ WebDriver -- Advanced Usage: https://docs.seleniumhq.org/docs/04_webdriver_advanced.jsp#using-a-proxy
- ↑ Why am I getting “The type is deprecated” as an error in Selenium? https://stackoverflow.com/questions/27661196/why-am-i-getting-the-type-is-deprecated-as-an-error-in-selenium
- ↑ WebDriver setup: https://developer.mozilla.org/en-US/docs/Mozilla/QA/Marionette/WebDriver
- ↑ webdriver.gecko.driver system property: https://github.com/mozilla/geckodriver/issues/177
- ↑ Driver executable must be set by the webdriver.ie.driver system property: http://stackoverflow.com/questions/10995314/driver-executable-must-be-set-by-the-webdriver-ie-driver-system-property
- ↑ Make it possible to choose Geckodriver for Firefox -- Issue #2600: https://github.com/SeleniumHQ/selenium/issues/2600
- ↑ How to use Firefox in Selenium using geckodriver in Selenium 3: http://learn-automation.com/use-firefox-selenium-using-geckodriver-selenium-3/
- ↑ WebDriver Support in Safari 10: https://webkit.org/blog/6900/webdriver-support-in-safari-10/ (run automated tests against iPhones, iPads & iPods via Safari iOS WebDriver)
- ↑ How to setup "MutableCapabilities": https://gist.github.com/shs96c/0951bdd0ca903ca22b2510e4438085c3
- ↑ Cannot find firefox binary in PATH. Make sure FireFox is installed: https://stackoverflow.com/questions/20950748/cannot-find-firefox-binary-in-path-make-sure-firefox-is-installed
- ↑ Handling Date Time Picker using Selenium: http://www.guru99.com/handling-date-time-picker-using-selenium.html
- ↑ Selenium -- How to verify the current date value in a field: http://groups.google.com/forum/#!topic/selenium-users/LXWik4nm6U8
- ↑ WebDriver Wait For Page to Load Example in Java: https://www.testingexcellence.com/webdriver-wait-page-load-example-java/
- ↑ How to hide Firefox window (Selenium WebDriver)?: http://stackoverflow.com/questions/5370762/how-to-hide-firefox-window-selenium-webdriver/23898148#23898148
- ↑ How to Use Selenium with JMeter's Webdriver Sampler: https://www.blazemeter.com/blog/jmeter-webdriver-sampler
- ↑ WebDriver driver = new PhantomJSDriver(); FAILS now... What happened to Selenium's support for PhantomJS headless tests?: https://github.com/SeleniumHQ/selenium/issues/5295
- ↑ GhostDriver: https://github.com/detro/ghostdriver | DOWNLOAD (GhostDriver is the Java PhantomJS Driver)
- ↑ How to implement PhantomJS with Selenium WebDriver using java: https://stackoverflow.com/questions/24138398/how-to-implement-phantomjs-with-selenium-webdriver-using-java
- ↑ Page scroll up or down in Selenium WebDriver (Selenium 2) using java: https://stackoverflow.com/questions/12293158/page-scroll-up-or-down-in-selenium-webdriver-selenium-2-using-java
- ↑ How To Scroll Web Page Down Or UP Using Selenium WebDriver: https://www.softwaretestingmaterial.com/scroll-web-page-using-selenium-webdriver/
- ↑ How to keyPress Page Down multiple times in selenium WebDriver using java?: https://stackoverflow.com/questions/45418617/how-to-keypress-page-down-multiple-times-in-selenium-webdriver-using-java
- ↑ Scrolling using Selenium WebDriver with Java: https://stackoverflow.com/questions/9443067/scrolling-using-selenium-webdriver-with-java
- ↑ How to press Keyboard in selenium webdriver? : http://seleniumhome.blogspot.ca/2013/07/how-to-press-keyboard-in-selenium.html
- ↑ How to scroll a page with Selenium: https://stackoverflow.com/questions/8433223/how-to-scroll-page-with-selenium
- ↑ When running WebDriver with Chrome browser, getting message, “Only local connections are allowed” even though browser launches properly: https://stackoverflow.com/questions/25080500/when-running-webdriver-with-chrome-browser-getting-message-only-local-connect/25088200#25088200
- ↑ What’s new in selenium 3.0: http://qavalidation.com/2016/08/whats-new-in-selenium-3-0.html/
- ↑ Enhancing automated testing in Microsoft Edge with new WebDriver capabilities, W3C protocol support, and automatic updates: https://blogs.windows.com/msedgedev/2018/06/14/webdriver-w3c-recommendation-feature-on-demand/
- ↑ Can Selenium interact with an existing browser session?: https://stackoverflow.com/questions/8344776/can-selenium-interact-with-an-existing-browser-session
- ↑ PageFactory, Page Objects and locators from an external file: https://rationaleemotions.wordpress.com/2016/06/27/pagefactory-page-objects-and-locators-from-an-external-file/
- ↑ Selenium Java - Hybrid Framework: https://github.com/Abhilash04/SeleniumJavaHybridFramework (some helpful example patterns such as Apache POI - Excel Data Reader, PageObject test pattern, etc)
- ↑ Getting Started with SeleniumIDE Plugins: https://github.com/SeleniumHQ/selenium-ide/wiki/Getting-Started-with-Plugins
- ↑ Selenium IDE v3.0 quick start guide: https://devopsqa.wordpress.com/2018/04/17/selenium-ide/
- ↑ Selenium SIDE Runner: https://github.com/SeleniumHQ/selenium-ide/blob/extensibility/packages/selenium-side-runner/README.md
- ↑ Firefox 55 & Selenium IDE: https://seleniumhq.wordpress.com/2017/08/09/firefox-55-and-selenium-ide/ (officially the end of the line for legacy FF XUL/XPI SeleniumIDE, an effort is now underway to replace it with a WebExtensions API version that should work in FF/Chrome/Opera)
- ↑ SideeX - extended version of Selenium IDE: http://sideex.org/ (works on Chrome/FF, more limited functionality, still allows export/bindings)
- ↑ SnapTest - SeleniumIDE "in the Cloud": https://www.snaptest.io/ (although has a smoother UI and a few nice features, it only implements part of Selenium features and seems to be trending towards vendor lock-in to their Cloud services)
- ↑ Using Selenium IDE for the first time: https://techblog.polteq.com/en/using-selenium-ide-first-time/
- ↑ Recording Test Scripts: http://blog.browsermob.com/help/creating-a-test/recording-test-scripts/
- ↑ Automated Web Testing with Selenium and the NetBeans Platform: http://wadechandler.blogspot.ca/2011/04/automated-web-testing-with-selenium-and.html
- ↑ 6 Ways to Make The Most of Selenium IDE: http://joshjustice.wordpress.com/2010/04/07/6-ways-to-make-the-most-of-selenium-ide/
- ↑ How to Click a Link by href value in WebDriver: http://www.testingexcellence.com/click-link-href-value-webdriver/
- ↑ How to click on All links in Web page: https://stackoverflow.com/questions/21898567/how-to-click-on-all-links-in-web-page
- ↑ How to click all links in WebPage (Selenium WebDriver): http://stackoverflow.com/questions/21898567/how-to-click-on-all-links-in-web-page
- ↑ How to find broken links using Selenium IDE (or WebDriver): https://sqa.stackexchange.com/questions/11879/how-to-find-broken-links-using-selenium-ide
- ↑ Compare screenshots of rendered web pages: ttps://sqa.stackexchange.com/questions/2459/compare-screenshots-of-rendered-web-pages
- ↑ How to Do Visual Testing with Selenium: http://testautomation.applitools.com/post/105435804567/how-to-do-visual-testing-with-selenium
- ↑ Selenium IDE Firefox add-on end of life: https://www.ghacks.net/2017/08/21/selenium-ide-firefox-add-on-end-of-live/
- ↑ Integrating Selenium with Google Drive: http://dzone.com/articles/integrating-selenium-with-google-drive (upload your Automated Testing Results from just about anywhere from Java)
- ↑ Selenium IDE Scheduler Has Arrived: Part 1 | Part 2 | Part 3 | Part 4 | Part 5 | Part 6
- ↑ How to handle a File Download in Selenium IDE: http://sqa.stackexchange.com/questions/14525/how-to-handle-a-download-file-in-selenium-ide
- ↑ How to Rename a File and Folder from the Command Prompt: http://www.sevenforums.com/tutorials/56013-file-folder-rename-command-prompt.html
- ↑ Selenium IDE - script execution time in output: http://stackoverflow.com/questions/15000648/selenium-ide-script-execution-time-in-output
- ↑ JMeter & Selenium WebDriver – Why would you want to combine them?: https://techblog.polteq.com/en/jmeter-and-webdriver-why-would-you-want-to-combine-them/
- ↑ JMeter and WebDriver – 2 ways to combine them effectively: https://techblog.polteq.com/en/jmeter-and-webdriver-2-ways-to-combine-them-effectively/
- ↑ 6 Ways to Make The Most of Selenium IDE: https://joshjustice.wordpress.com/2010/04/07/6-ways-to-make-the-most-of-selenium-ide/
- ↑ Is there a way for Selenium to verify if the number of items fits a criteria?: http://stackoverflow.com/questions/8838211/is-there-a-way-for-selenium-to-verify-if-the-number-of-items-fits-a-criteria
- ↑ How to extract the text within an HTML tag (in Selenium IDE)?: http://stackoverflow.com/questions/6069829/how-to-extract-the-text-within-an-html-tag-in-selenium-ide
- ↑ Running selenium IDE testcases in JMeter: https://groups.google.com/forum/#!topic/selenium-users/j5avEinNEjM
- ↑ Selenium+Junit+Jmeter: https://groups.google.com/forum/#!topic/selenium-users/_3g8goYyr9U/discussion
- ↑ Storing variables in Selenium IDE: http://webigniter.wordpress.com/2011/04/07/storing-variables-in-selenium-ide/
- ↑ Using variables in Selenium IDE: http://www.oshyn.com/Blogs/2014/February/Using-variables-in-Selenium-IDE
- ↑ Selenium IDE JavaScript and Command Parameters: http://seleniummaster.com/sitecontent/index.php/introduction-to-selenium-automation/selenium-ide/96-selenium-ide-javascript-and-command-parameters
- ↑ Get current system date using java script in Selenium IDE : http://seleniumide.blogspot.ca/2010/12/get-current-system-date-using-java.html
- ↑ Comparing dates in Selenium IDE: http://stackoverflow.com/questions/29364035/comparing-dates-in-selenium-ide (i.e. checking Age, find item with Date=Today, etc)
- ↑ Page load strategy for Chrome driver: https://stackoverflow.com/questions/43734797/page-load-strategy-for-chrome-driver
- ↑ Dynamic dates in Selenium IDE: http://dubbelfnutt.wordpress.com/2011/02/18/dynamic-dates-in-selenium-ide/
- ↑ How to get url from 'link' element in Selenium IDE: http://stackoverflow.com/questions/16220696/how-to-get-url-from-link-element-in-selenium-ide
- ↑ Selenium click on link: http://stackoverflow.com/questions/11311100/selenium-click-on-link
- ↑ Manual input from user while running Selenium IDE script: http://stackoverflow.com/questions/8921929/manual-input-from-user-while-running-selenium-ide-script
- ↑ How to parse a URL from string in Selenium IDE: http://stackoverflow.com/questions/7996820/how-to-parse-a-url-from-string-in-selenium-ide
- ↑ Selenium IDE and xpath - find text / row in table and select radio box: http://stackoverflow.com/questions/10428878/selenium-ide-and-xpath-find-text-row-in-table-and-select-radio-box
- ↑ CSS target elements by partial class or ID name: http://www.antimath.info/css/css-target-elements-by-partial-class-or-id-name/
- ↑ Better Web Testing With Selenium: https://dzone.com/articles/better-web-testing-with-selenium (selector best practices for maintainability: IDs, then CSS path, then xPath, then specific Classes by name but only if well architected for uniqueness/specificity, lastly pixel-based)
- ↑ Wait commands in Selenium (Java): http://toolsqa.com/selenium-webdriver/wait-commands/
- ↑ Selenium IDE - Command to wait for 5 seconds: http://stackoverflow.com/questions/6694981/selenium-ide-command-to-wait-for-5-seconds
- ↑ WebDriver -- Advanced Usage: http://www.seleniumhq.org/docs/04_webdriver_advanced.jsp
- ↑ How to use Selenium IDE with Scripts & Commands (Assertions, Actions): http://www.guru99.com/first-selenium-test-script.html (continue Test Script despite an error)
- ↑ Selenium IDE - "runScript" Command example to generate alert including variable value : http://www.software-testing-tutorials-automation.com/2013/11/selenium-ide-runscript-command-example.html
- ↑ Getting Started With Selenium - Test Automation Pyramids: https://smartbear.com/learn/automated-testing/getting-started-with-selenium/?q=selenium
- ↑ Selenium -- How do I get the src of an image?: http://stackoverflow.com/questions/7245013/selenium-how-do-i-get-the-src-of-an-image
- ↑ How to assert the src of an image in Selenium?: https://groups.google.com/forum/#!topic/webdriver/-NRiru2dEoo
- ↑ Use xpath to get "src" attribute from "img" tag: http://grokbase.com/t/gg/selenium-users/127jnf9p1m/want-to-use-the-xpath-by-using-src-tag
- ↑ Selenium - test if element contains some text: http://stackoverflow.com/questions/9922054/selenium-test-if-element-contains-some-text
- ↑ Selenium jQuery lib in Java: http://www.vcskicks.com/selenium-jquery.php
- ↑ Using Selenium IDE's getEval command with FirefoxWebdriver: http://stackoverflow.com/questions/17214151/using-selenium-ides-geteval-command-with-firefoxwebdriver
- ↑ Compare stored values in Selenium IDE: http://stackoverflow.com/questions/30073301/compare-stored-values-in-selenium-ide
- ↑ Selenium questions/answers from an expert Automated Tester: https://arunpp.wordpress.com/selenium/
- ↑ Selenium Tips -- CSS Selectors: http://saucelabs.com/resources/articles/selenium-tips-css-selectors
- ↑ ElementalSelenium -- CSS .vs. xPath selector Benchmarks - http://elementalselenium.com/tips/category/benchmarks
- ↑ How to Identify Web Elements Using Selenium Xpath and Other Locators – Selenium Tutorial #5: http://www.softwaretestinghelp.com/using-selenium-xpath-and-other-locators-selenium-tutorial-5/
- ↑ Selenium IDE - always fail on any 500 error: http://stackoverflow.com/questions/6228700/selenium-ide-always-fail-on-any-500-error/6989213#6989213 (requires a custom script in the Selenium settings)
- ↑ Tutorial post for selenium IDE "waitForTitle" and "waitForNotTitle" commands : http://www.software-testing-tutorials-automation.com/2013/11/tutorial-post-for-selenium-ide.html
- ↑ WaitForTitle does not work: http://stackoverflow.com/questions/39107883/waitfortitle-does-not-work
- ↑ Selenium IDE testing all links: http://stackoverflow.com/questions/10137250/selenium-ide-testing-all-links
- ↑ A Simple Loop in Selenium IDE: http://kb.jaxara.com/simple-loop-selenium-ide
- ↑ Selenium IDE Xpath Tutorials: http://seleniummaster.com/sitecontent/index.php/introduction-to-selenium-automation/selenium-ide/115-selenium-ide-xpath-tutorials
- ↑ Selenium IDE assertions "verifyNotText" and "verifyNotTitle" Command Examples: http://www.software-testing-tutorials-automation.com/2013/10/selenium-ide-assertions-verifynottext.html
- ↑ Selenium - test if element contains some text: https://stackoverflow.com/questions/9922054/selenium-test-if-element-contains-some-text
- ↑ Selenium get current URL after loading a page: https://stackoverflow.com/questions/16242340/selenium-get-current-url-after-loading-a-page#16242994
- ↑ How to store the content/value of xpath?: https://stackoverflow.com/questions/11010992/how-to-store-the-content-value-of-xpath
- ↑ How do I find an element that contains specific text in Selenium Webdriver (Python)?: https://stackoverflow.com/questions/12323403/how-do-i-find-an-element-that-contains-specific-text-in-selenium-webdriver-pyth
- ↑ Selenium -- test if element contains some text: https://stackoverflow.com/a/9928813/335867
- ↑ Selenium IDE "focus" and "keyUp" commands with example: http://www.software-testing-tutorials-automation.com/2013/07/selenium-ide-focus-and-keyup-commands.html' (click a troublesome button or link using tab over to it and hit Enter method)
- ↑ How do i allow Chrome to use my microphone programatically?: https://stackoverflow.com/questions/38832776/how-do-i-allow-chrome-to-use-my-microphone-programatically
- ↑ Parameterization of Tests in Selenium IDE: http://selftechy.com/2011/06/30/parameterization-of-tests-in-selenium-ide
- ↑ SeleniumIDE JS Extensions: http://www.seleniumhq.org/docs/08_user_extensions.jsp#using-user-extensions-with-selenium-ide | EXAMPLE
- ↑ flash-selenium example: http://www.developerfusion.com/project/18930/flashselenium/ (APPLICATION LINK DEAD: an old color chooser example using "colors.html" & "colors.swf" files)
- ↑ More recent example of testing the Flash ColorChooser in Selenium: https://qaguru.wordpress.com/2011/05/24/selenium-and-flash-testing-flash-application-using-selenium/
- ↑ Testing Flash with Selenium (Flash – JavaScript communication): http://toolsqa.com/selenium-webdriver/testing-flash-selenium-flash-javascript-communication/ (selenium sample in C#)
- ↑ Writing and running functional tests for Flash with Selenium RC: https://www.adobe.com/devnet/flash/articles/flash_selenium.html
- ↑ Writing and running functional tests for Flash with Selenium RC: https://qaguru.wordpress.com/2011/05/24/selenium-and-flash-testing-flash-application-using-selenium/
- ↑ Enable Flash player on Chrome 62 while running selenium test: https://sqa.stackexchange.com/questions/30312/enable-flash-player-on-chrome-62-while-running-selenium-test (apart from setting Capabilities via WebDriver API, requires running Chrome with "--allow-outdated-plugins" flag as of Chrome 62+)
- ↑ Introduction To Creating Automated Tests by Using Selenium IDE and Python: https://desmart.com/blog/introduction-to-creating-automated-tests-by-using-selenium-ide-and-python
- ↑ How to use Selenium with Python: https://stackoverflow.com/questions/17540971/how-to-use-selenium-with-python
- ↑ How to Use Selenium with Python -- Complete Tutorial : https://www.guru99.com/selenium-python.html
- ↑ How to execute a Selenium test in Java: http://stackoverflow.com/questions/18492668/how-to-execute-a-selenium-test-in-java
- ↑ Selenium Test Automation Success Reasons and Best Practices: http://dzone.com/articles/selenium-test-automation-success-reasons-amp-best
- ↑ FF cross-platform Linux instal scripts example: https://gist.github.com/cgoldberg/4097efbfeb40adf698a7d05e75e0ff51
- ↑ Install Chrome, ChromeDriver and Selenium on Ubuntu 16.04: https://gist.github.com/ziadoz/3e8ab7e944d02fe872c3454d17af31a5
- ↑ Just Say No to More End-to-End Tests: https://testing.googleblog.com/2015/04/just-say-no-to-more-end-to-end-tests.html
- ↑ Selenium - How to use x and y coordinate position: http://stackoverflow.com/questions/6448457/selenium-how-to-use-x-and-y-coordinate-position
- ↑ Writing XPath selectors for Selenium tests: http://hedleyproctor.com/2011/05/tutorial-writing-xpath-selectors-for-selenium-tests/
- ↑ Automating Selenium testing with TestNG, Ant and CruiseControl: http://hedleyproctor.com/2011/07/automating-selenium-testing-with-testng-ant-and-cruisecontrol/
- ↑ Tips for running Selenium Server: https://testersworld.wordpress.com/about/selenium-rcremote-control/
- ↑ Selenium RC example: http://www.tutorialspoint.com/selenium/selenium_rc.htm (Selenium 1.x used the Remote Control or RC API, whereas Selenium 2+ uses WebDriver APIs specific to the Browser being tested with)
- ↑ Specifying the Firefox Profile: http://www.seleniumhq.org/docs/05_selenium_rc.jsp#specifying-the-firefox-profile (Firefox will not run two instances simultaneously unless you specify a separate profile for each instance)
- ↑ Selenium -- Could not start Selenium session - Failed to start new browser session: Error while launching browser: https://stackoverflow.com/questions/1414934/selenium-could-not-start-selenium-session-failed-to-start-new-browser-session
- ↑ Running Java JUnit tests that depend on WebDriver on Windows command line?: https://stackoverflow.com/questions/39226529/running-java-junit-tests-that-depend-on-webdriver-on-windows-command-line
- ↑ Selenium IDE and Web Scraping: http://scraping.pro/selenium-ide-and-web-scraping/
- ↑ What is jUnit – testing framework (and how is it used with Selenium): https://seleniumonlinetrainingexpert.wordpress.com/2012/11/21/what-is-junit-testing-framework/
- ↑ Selenium - Quick Guide: https://www.tutorialspoint.com/selenium/selenium_quick_guide.htm
- ↑ Selenium Grid (OFFICIAL DOCS): http://www.seleniumhq.org/docs/07_selenium_grid.jsp
- ↑ Selenium Grid - Hub & Node diagram: https://www.hub4tech.com/selenium/selenium-grid
- ↑ Docker -- Selenium image for Automated Testing - Getting Started: https://www.youtube.com/watch?v=S4OkrnFb-YY
- ↑ How To Run Your Tests Headlessly with Xvfb: http://elementalselenium.com/tips/38-headless (command to setup xvfb for headless testing on Unix/Linux "nohup Xvfb -ac :99 -screen 0 1280x1024x16 -extension RANDR & export DISPLAY=:99")
- ↑ Can Selenium IDE/Builder run same test case on many pages?: https://stackoverflow.com/questions/30493966/can-selenium-ide-builder-run-same-test-case-on-many-pages
- ↑ Comparison of Selenium IDE, Remote Control (RC) & WebDriver – Key Differences : http://www.slideshare.net/videotuition/comparison-of-selenium-ide-remote-control-rc-web-driver-key-differences
- ↑ WebDriver -- Can I inject a jQuery script for a page that isn't using jQuery?: https://sqa.stackexchange.com/questions/2921/webdriver-can-i-inject-a-jquery-script-for-a-page-that-isnt-using-jquery
- ↑ Using Selenium scripts with JMeter for load testing: https://sqa.stackexchange.com/questions/3313/using-selenium-scripts-with-jmeter-for-load-testing
- ↑ How to use a already opened firefox for testing in Selenium: https://stackoverflow.com/questions/19690157/how-to-use-a-already-opened-firefox-for-testing-in-selenium
- ↑ Selenium Webdriver -- How do I run multiple tests, one after the other in the same window?: https://stackoverflow.com/questions/27388940/selenium-webdriver-how-do-i-run-multiple-tests-one-after-the-other-in-the-same
- ↑ Sauce Labs: https://saucelabs.com/ | DOCS
- ↑ Katalon Studio - free test automation IDE: https://www.katalon.com/ | SLIDES
- ↑ Silk WebDriver: https://www.microfocus.com/products/silk-portfolio/silk-webdriver/
- ↑ FRET (Front-End Testing Tool): https://www.frontendtest.org/blog/selenium-ide-chrome/ (claims to be "SeleniumIDE ported to Chrome")
- ↑ Canoo WebTest: http://webtest.canoo.com/webtest/manual/WebTestHome.html
- ↑ Kantu: https://a9t9.com/ | KANTU - Selenium IDE compatible commands
- ↑ iMacros: https://imacros.net/#prettyPhoto
- ↑ How to run tests from Selenium IDE in Chrome: http://screenster.io/running-tests-from-selenium-ide-in-chrome/
- ↑ Selenium IDE -- The Good, the Bad, and the Ugly: https://www.lucidchart.com/techblog/2016/09/13/selenium-ide-the-good-the-bad-and-the-ugly/
- ↑ SauceLabs -- Selenium Tips - CSS Selectors: https://saucelabs.com/resources/articles/selenium-tips-css-selectors
- ↑ Selenium IDE alternatives for UI regression testing: https://news.ycombinator.com/item?id=13586904
- ↑ Selenium IDE is not compatible with Firefox 55: https://github.com/SeleniumHQ/selenium/issues/4406
- ↑ Firefox 32 broken with selenium 2.42: https://github.com/SeleniumHQ/selenium-google-code-issue-archive/issues/7823
- ↑ Running Selenium tests under py.test convention with docker support: https://github.com/eliranshani/selenium-docker-allure
- ↑ Setting up Selenium with Eclipse: http://selftechy.com/2011/05/31/setting-up-selenium-with-eclipse
- ↑ Selenium – Creating XML Reports: http://selftechy.com/2011/07/07/selenium-creating-xml-reports
- ↑ Selenium – Use Ant to Generate (jUnit-style) HTML Reports: http://selftechy.com/2011/06/29/selenium-use-ant-to-generate-html-reports
- ↑ Selenium – Use Assertions to Verify the Test Output: http://selftechy.com/2011/07/10/selenium-use-assertions-to-verify-the-test-output
- ↑ I want to run Selenium test case file from command line: https://stackoverflow.com/questions/1231975/i-want-to-run-selenium-test-case-file-from-command-line#1234439
- ↑ Selenium Testing with Google Chrome - Success!: https://groups.google.com/forum/#!topic/selenium-users/cit1kcRNQho (-trustAllSSLCertificates will prevent Chrome from popping up that red warning screen that the certificate is self-signed)
- ↑ Automated Testing with Selenium Grid and Jenkins in 3 Steps: http://www.agiletrailblazers.com/blog/automated-testing-with-selenium-grid-and-jenkins
- ↑ How to configure Selenium HTML Reports in Jenkins: https://stackoverflow.com/questions/13082425/how-to-configure-selenium-html-reports-in-jenkins
- ↑ Selenium plugin for Jenkins: https://wiki.jenkins.io/display/JENKINS/Selenium+Plugin
- ↑ Selenium Grid VS Jenkins: https://stackoverflow.com/questions/27573634/selenium-grid-vs-jenkins
- ↑ Distributed Testing with Selenium Grid: https://www.packtpub.com/sites/default/files/downloads/Distributed_Testing_with_Selenium_Grid.pdf
- ↑ Selenium Tips -- Taking ScreenShots on the Server: https://web.archive.org/web/20110311121204/https://saucelabs.com/blog/index.php/2009/10/selenium-tip-of-the-week-screenshot/
- ↑ Mozilla Dev -- FireFox - Using headless mode: https://developer.mozilla.org/en-US/Firefox/Headless_mode
- ↑ HeadlessFirefoxSeleniumExample.java: https://github.com/mdn/headless-examples/blob/master/headlessfirefox-gradle/src/main/java/com/mozilla/example/HeadlessFirefoxSeleniumExample.java
- ↑ Merging Firebug into the built-in Firefox Developer Tools: https://blog.getfirebug.com/2016/02/08/merging-firebug-into-the-built-in-firefox-developer-tools/
- ↑ What are browser developer tools?: https://developer.mozilla.org/en-US/docs/Learn/Common_questions/What_are_browser_developer_tools
- ↑ wikipedia: Microsoft Script Debugger
- ↑ Test your Web scripts using the Microsoft Script Debugger: http://www.techrepublic.com/article/test-your-web-scripts-using-the-microsoft-script-debugger/
- ↑ How to debug JS in (old) IE browsers: https://jonathanboutelle.com/2006/01/16/how-to-debug-javascript-in-internet-explorer/
- ↑ Debugging Script with the Developer Tools: https://msdn.microsoft.com/en-us/library/dd565625(v=vs.85).aspx
- ↑ Debugging HTML and CSS with the Developer Tools: https://msdn.microsoft.com/en-us/library/dd565627(v=vs.85).aspx
- ↑ Debugging Internet Explorer - A Beginner’s Guide: https://blogs.msdn.microsoft.com/ieinternals/2014/01/15/debugging-internet-explorer-a-beginners-guide/
- ↑ IE 11 - Using the F12 Dev Tools: https://msdn.microsoft.com/en-us/library/bg182326(v=vs.85).aspx
- ↑ MS Edge - F12 Dev Tools guide: https://docs.microsoft.com/en-us/microsoft-edge/f12-devtools-guide
- ↑ Meet the Microsoft Edge F12 Dev Tools: https://docs.microsoft.com/en-us/microsoft-edge/f12-devtools-guide
- ↑ IE11/Edge -- How to use F12 Developer Tools to Debug your Webpages: https://msdn.microsoft.com/en-us/library/gg589507(v=vs.85).aspx
- ↑ Safari's iOS WebDev Tools & Debugger: https://developer.apple.com/library/content/qa/qa1804/_index.html#//apple_ref/doc/uid/DTS40013776
- ↑ 10 Years of Web Inspector: https://webkit.org/blog/5718/10-years-of-web-inspector/
- ↑ Enable the Safari Debug Console on iPhone & iPad: http://osxdaily.com/2012/05/07/enable-safari-debug-console-ios/
- ↑ Quick Tip - Using Web Inspector to Debug Mobile Safari: https://webdesign.tutsplus.com/articles/quick-tip-using-web-inspector-to-debug-mobile-safari--webdesign-8787
- ↑ Debug a Website in iOS Safari on Windows: http://washamdev.com/2016/02/debug-a-website-in-ios-safari-on-windows/
- ↑ Debug iOS Safari html layout on Windows: https://stackoverflow.com/questions/11333501/debug-ios-safari-html-layout-on-windows
- ↑ How to Activate the iPhone Debug Console: https://www.lifewire.com/activate-the-debug-console-in-safari-445798
- ↑ Optimizing Page Load Time (and a little about the Debug menu): https://webkit.org/blog/75/optimizing-page-load-time-and-a-little-about-the-debug-menu/
- ↑ Web Inspector Redesign/Updates (2008-2009): https://webkit.org/blog/829/web-inspector-updates/ (see links to previous updates within)
- ↑ State of Web Inspector: https://webkit.org/blog/2518/state-of-web-inspector/
- ↑ Web Inspector Console Improvements: https://webkit.org/blog/3516/web-inspector-console-improvements/
- ↑ Web Inspector Keyboard Shortcuts: https://webkit.org/blog/4038/web-inspector-keyboard-shortcuts/
- ↑ Web Inspector User Interface Changes (2015): https://webkit.org/blog/3574/web-inspector-interface-changes/
- ↑ Breakpoint Options: https://webkit.org/blog/5435/breakpoint-options/
- ↑ Memory Debugging with Web Inspector: https://webkit.org/blog/6425/memory-debugging-with-web-inspector/
- ↑ How to open DevTools in Opera?: http://help.opera.com/Windows/9.50/en/devtools.html
- ↑ EasyMock - comprehensive user guide: http://easymock.org/user-guide.html
- ↑ wikipedia: EasyMock
- ↑ EasyMock tutorial: https://www.tutorialspoint.com/easymock/
- ↑ Testing with EasyMock - Tutorial: http://www.vogella.com/tutorials/EasyMock/article.html
- ↑ dzone - JUnit & EasyMock (REFCARDZ): https://dzone.com/storage/assets/4076-rc028-010d-junit_0.pdf
- ↑ EasyMock Tutorial -- Getting Started: https://dzone.com/articles/easymock-tutorial-–-getting
- ↑ Easier testing with EasyMock: https://www.ibm.com/developerworks/library/j-easymock/index.html
- ↑ EasyMock tutorial – Getting Started: https://veerasundar.com/blog/2012/06/easymock-tutorial-getting-started/
- ↑ wikipedia: Mockito
- ↑ JUnit 5 mockito extension: https://github.com/mockito/mockito/wiki/Related-Projects
- ↑ Mockito tutorial: https://www.tutorialspoint.com/mockito/index.htm
- ↑ Unit tests with Mockito - Tutorial: http://www.vogella.com/tutorials/Mockito/article.html
- ↑ How to partially mock HttpServletRequest using Mockito: https://stackoverflow.com/questions/22714359/how-to-partially-mock-httpservletrequest-using-mockito
- ↑ dzone - Mockito (REFCARDZ): https://dzone.com/asset/download/256
- ↑ dzone - Getting Started with Mocking in Java using Mockito: https://dzone.com/articles/getting-started-mocking-java
- ↑ dzone - A Guide to Mocking With Mockito: https://dzone.com/articles/a-guide-to-mocking-with-mockito
- ↑ dzone - 5 Minute Mockito: https://dzone.com/articles/5-minute-mockito-tutorial-howto
- ↑ Mockito in six easy examples: https://gojko.net/2009/10/23/mockito-in-six-easy-examples/
- ↑ Unit Testing Complex Java Objects with Mockito: http://code.hootsuite.com/unit-testing-complex-java-objects-with-mockito/
- ↑ Mockito – Using Spies: http://www.baeldung.com/mockito-spy
- ↑ JUnit Testing using Mockito and PowerMock: https://blog.codecentric.de/en/2016/03/junit-testing-using-mockito-powermock/
- ↑ A Unit Testing Practitioner's Guide to Everyday Mockito: https://www.toptal.com/java/a-guide-to-everyday-mockito
- ↑ Using PowerMock with EasyMock: https://github.com/powermock/powermock/wiki/EasyMock
- ↑ Maven config - PowerMock + EasyMock: https://github.com/powermock/powermock/wiki/EasyMock-Maven
- ↑ EasyMock gets more power with PowerMock: http://www.tsolak.com/easymock-gets-more-power-with-powermock/
- ↑ Using PowerMock with Mockito: https://github.com/powermock/powermock/wiki/Mockito
- ↑ Maven setup for the Mockito 2.x: https://github.com/powermock/powermock/wiki/Mockito-2-Maven
- ↑ JUnit Testing using Mockito and PowerMock: https://blog.codecentric.de/en/2016/03/junit-testing-using-mockito-powermock/
- ↑ Watir - Podcasts: https://soundcloud.com/the-watir-podcast
- ↑ wikipedia: HP QuickTest Professional
- ↑ HP QuickTest Professional 11.00 Minimum System Requirements and Supported Environments: http://h18004.www1.hp.com/products/quickspecs/14128_div/14128_div.html
- ↑ QTP 11 – Firefox support matrix: http://www.learnqtp.com/qtp11-firefox-support-matrix/
- ↑ “Genie” – Automated UI Tester for Adobe ActionScript: http://inflagrantedelicto.memoryspiral.com/2012/06/genie-automated-ui-tester-for-adobe-actionscript/
- ↑ SikuliX: http://sikulix.com/
- ↑ Sikuli project downloads landing page: https://launchpad.net/sikuli
- ↑ How to Integrate Sikuli with Selenium Webdriver: learn-automation.com/integrate-sikuli-with-selenium-webdriver/
- ↑ The Road to HTML5 -- Automating visual testing with Sikuli: https://blog.gliffy.com/2012/07/12/the-road-to-html5-automating-visual-testing-with-sikuli/
- ↑ Sikuli – for all those hard to reach places!: https://hel1lotestworld.com/2012/04/27/sikuli-for-all-those-hard-to-reach-places/
- ↑ Using Sikuli to test legacy Flash: https://technicaltesting.wordpress.com/2012/01/19/using-sikuli-to-test-legacy-flash/
- ↑ Sikuli Automation Tool with Coded UI (using via C#): http://afour-tech.ulitzer.com/node/3825668
- ↑ Building Large-scale Testing framework Using Sikuli --- to be revised: https://answers.launchpad.net/sikuli/+faq/1110
- ↑ Building Large-scale Testing framework Using Sikuli 1.0 - Mac and Windows: https://answers.launchpad.net/sikuli/+question/111193/+index
- ↑ Write sikuli code in pure java?: https://answers.launchpad.net/sikuli/+question/108878
- ↑ Continuous Testing -- Onboarding and Best Practices: http://info.blazemeter.com/thank-you-continuous-testing-onboarding-best-practices-0
- ↑ LoadRunner tutorials: http://motevich.blogspot.ca/2008/01/loadrunner-tutorials.html
- ↑ Apache JMeter 3.0 – What’s New?: http://dzone.com/articles/apache-jmeter-30-whats-new
- ↑ How to Write a plugin for JMeter: http://jmeter.apache.org/extending/jmeter_tutorial.pdf
- ↑ JMeter Tutorial: http://www.tutorialspoint.com/jmeter/
- ↑ How to get started with JMeter (PART 1): http://dzone.com/articles/how-to-get-started-with-jmeter-part-1-installation
- ↑ Apache JMeter Tutorial: http://dzone.com/articles/apache-jmeter-tutorial
- ↑ Distributed Performance Testing With Maven JMeter and Jenkins: http://dzone.com/articles/distributed-performance
- ↑ JMeter 12-step to Mastery Tutorial: http://www.guru99.com/jmeter-tutorials.html
- ↑ Recording Test Performance (history) with Jenkins: https://dzone.com/articles/recording-test-performance (store historical performance to generate graphs over time)
- ↑ Integrating Selenium with JMeter for Load Testing: http://www.anzaan.com/2012/07/integrating-selenium-with-jmeter-for-application-load-testing/
- ↑ Selenium Integration with JMeter: https://testxpress.wordpress.com/2012/09/16/selenium-integration-with-jmeter/
- ↑ Running Selenium scripts with JMeter: http://stackoverflow.com/questions/7817498/running-selenium-scripts-with-jmeter
- ↑ How to handle windows popups using JMeter?: http://stackoverflow.com/questions/36907636/how-to-handle-windows-popups-using-jmeter
- ↑ How to Use HTTP Basic Authentication in JMeter: https://www.blazemeter.com/blog/how-use-http-basic-authentication-jmeter
- ↑ JMeter Listeners: http://jmeter.apache.org/usermanual/listeners.html#defaults
- ↑ JMeter Listeners -- Part I - Listeners with Basic Displays: https://www.blazemeter.com/blog/jmeter-listeners-part-1-basic-display-formats
- ↑ JMeter Listeners -- Part II - Listeners That Aggregate Data Samples:
- ↑ JMeter Listeners -- Part III - Listeners That Calculate Distribution Metrics: https://dzone.com/articles/jmeter-listeners-part-3-listeners-that-calculate-d
- ↑ MySQL Database and JMeter -- How to Test Your Connection: https://dzone.com/articles/mysql-database-and-jmeter-how-to-test-your-connect
- ↑ Using JMeter for Performance Testing HLS Video Delivery: http://info.blazemeter.com/thank-you-using-jmeter-performance-testing-hls-video-delivery-0
- ↑ XMPP Load Testing - Advanced Scenarios: https://dzone.com/articles/xmpp-load-testing-advanced-scenarios
- ↑ JMeter Parameterization -- The Complete Guide: https://dzone.com/articles/jmeter-parameterization-the-complete-guide
- ↑ Generating Report Dashboard: http://jmeter.apache.org/usermanual/generating-dashboard.html
- ↑ Continuous Integration 101 -- How to Run JMeter With Jenkins: https://www.blazemeter.com/blog/continuous-integration-101-how-run-jmeter-jenkins
- ↑ Configure Jenkins to Run and Show JMeter Tests: http://www.baeldung.com/jenkins-and-jmeter (both Jenkins classic GUI config and Jenkins Pipeline examples)
- ↑ How to Load Test OpenId Secured Websites: https://www.blazemeter.com/blog/how-load-test-openid-secured-websites
- ↑ The Boundary Extractor vs. the Regular Expression Extractor in JMeter: https://www.blazemeter.com/blog/the-boundary-extractor-vs-the-regular-expression-extractor-in-jmeter
- ↑ JMeter Plugins: https://jmeter-plugins.org/
- ↑ How to Create a Local Repository of JMeter Plugins: https://dzone.com/articles/how-to-create-a-local-repository-of-jmeter-plugins
- ↑ How to Reuse Your JMeter Code With JAR Files and Save Time: https://dzone.com/articles/how-to-reuse-your-jmeter-code-with-jar-files-and-s
- ↑ Running JMeter with Docker in the Cloud: https://www.blazemeter.com/blog/running-jmeter-with-docker-in-the-cloud
- ↑ RTMP Performance Testing with JMeter -- Learn How: https://www.blazemeter.com/blog/rtmp-performance-testing-with-jmeter-learn-how
- ↑ Meet skipfish, our automated web security scanner: http://googleonlinesecurity.blogspot.ca/2010/03/meet-skipfish-our-automated-web.html
- ↑ Akamai Security Advisory - Skipfish Web App Scanner: http://www.akamai.com/dl/akamai/Akamai-Security-Advisory-Skipfish-Application-Scanner.pdf
- ↑ Attackers Use Skipfish to Target Financial Sites: http://blogs.akamai.com/2014/01/attackers-use-skipfish-to-target-financial-sites.html
- ↑ Google releases Skipfish web-security scanner: http://www.zdnet.com/article/google-releases-skipfish-web-security-scanner-3040088391/
- ↑ Agile in a Nutshell -- The Testing Pyramid: http://www.agilenutshell.com/episodes/41-testing-pyramid
- ↑ The Mobile Test Pyramid: https://dojo.ministryoftesting.com/dojo/lessons/the-mobile-test-pyramid
- ↑ Inverting The Testing Pyramid: https://www.slideshare.net/nashjain/inverting-the-testing-pyramid
- ↑ The Forgotten Layer of the Test Automation Pyramid: https://www.mountaingoatsoftware.com/blog/the-forgotten-layer-of-the-test-automation-pyramid
- ↑ Agile-Friendly Test Automation Tools/Frameworks: http://testobsessed.com/2008/04/agile-friendly-test-automation-toolsframeworks/
- ↑ The Agile Testing Pyramid: http://www.agilecoachjournal.com/2014-01-28/the-agile-testing-pyramid
- ↑ WebDriver docs: https://seleniumhq.github.io/docs/wd.html
- ↑ See NOTES on the User Testing Methods Comparison Chart: http://dzone.com/articles/user-testing-methods-comparison-chart
- ↑ Test Driven Development (TDD) by Stephan Wels: https://sewiki.iai.uni-bonn.de/_media/teaching/labs/xp/2012b/seminar/3-tdd.pdf
- ↑ TDD strategy in Real Life: http://dzone.com/articles/tdd-strategy-in-real-life
- ↑ Keyword-Driven Testing overview: https://www.stickyminds.com/article/keyword-driven-testing
- ↑ Creating a Custom Keyword-Driven Framework: http://docs.testplant.com/ePF/using/epf-keyword-driven-testing-with-eggplant-functional.htm
- ↑ wikipedia: Keyword-driven testing
- ↑ Keyword Driven Framework Testing - Complete Tutorial: https://www.guru99.com/keyword-driven-testing.html
- ↑ Keyword-Driven Test Automation with Ranorex: https://www.ranorex.com/blog/keyword-driven-test-automation-framework/
- ↑ List of Keyword-driven testing tools: http://www.qatestingtools.com/keyword-driven-testing-tools
- ↑ 4 Ways to Choose Which Browsers and Devices to Test: https://crossbrowsertesting.com/blog/browsers/choose-which-browsers-to-test/
- ↑ Current Web Browser, OS, Device and Version Statistics (2016): https://collectiveinnovation.com/current-web-browser-os-device-and-version-statistics/
- ↑ Global market share held by leading smartphone vendors from 4th quarter 2009 to 4th quarter 2017: https://www.statista.com/statistics/271496/global-market-share-held-by-smartphone-vendors-since-4th-quarter-2009/
- ↑ OS Market Share (2018): https://netmarketshare.com/operating-system-market-share.aspx?options=%7B%22filter%22%3A%7B%22%24and%22%3A%5B%7B%22deviceType%22%3A%7B%22%24in%22%3A%5B%22Desktop%2Flaptop%22%5D%7D%7D%5D%7D%2C%22dateLabel%22%3A%22Trend%22%2C%22attributes%22%3A%22share%22%2C%22group%22%3A%22platform%22%2C%22sort%22%3A%7B%22share%22%3A-1%7D%2C%22id%22%3A%22platformsDesktop%22%2C%22dateInterval%22%3A%22Monthly%22%2C%22dateStart%22%3A%222017-03%22%2C%22dateEnd%22%3A%222018-02%22%2C%22segments%22%3A%22-1000%22%7D
- ↑ Browser Market Share (2018): https://netmarketshare.com/browser-market-share.aspx?options=%7B%22filter%22%3A%7B%22%24and%22%3A%5B%7B%22deviceType%22%3A%7B%22%24in%22%3A%5B%22Desktop%2Flaptop%22%5D%7D%7D%5D%7D%2C%22dateLabel%22%3A%22Trend%22%2C%22attributes%22%3A%22share%22%2C%22group%22%3A%22browser%22%2C%22sort%22%3A%7B%22share%22%3A-1%7D%2C%22id%22%3A%22browsersDesktop%22%2C%22dateInterval%22%3A%22Monthly%22%2C%22dateStart%22%3A%222017-03%22%2C%22dateEnd%22%3A%222018-02%22%2C%22segments%22%3A%22-1000%22%7D
- ↑ Mobile Vendor Market Share Worldwide: http://gs.statcounter.com/vendor-market-share/mobile
- ↑ Apple Trails Samsung in Smartphone Market—share, Won't likely Catch Up in 2018: http://fortune.com/2018/02/13/apple-iphone-samsung-market-share/
- ↑ Apple Passes Samsung to Capture the Top Position in the Worldwide Smartphone Market While Overall Shipments Decline 6.3% in the Fourth Quarter, According to IDC: https://www.idc.com/getdoc.jsp?containerId=prUS43548018
- ↑ Problem Steps Recorder (PSR.exe) + Windows Error Reporting = Another tool to help find solutions to software defects: https://blogs.msdn.microsoft.com/wer/2009/03/30/problem-steps-recorder-psr-exe-windows-error-reporting-another-tool-to-help-find-solutions-to-software-defects/
- ↑ Pareto Analysis - How/When To Use It: http://erc.msh.org/quality/pstools/pspareto.cfm
- ↑ Pareto Analysis (the 80:20 rule): http://www.managers-net.com/paretoanalysis.html
- ↑ Intro to QUnit (verbatim copy of SmashingMagazine article on JS unit testing): http://qunitjs.com/intro/
- ↑ Difference Between JMeter & LoadRunner: http://www.differencebetween.net/technology/software-technology/difference-between-jmeter-and-loadrunner/
See Also
Ant | Maven | CI/CD | SCM | Logging | Monitoring | Scheduling | Productivity | Security