OWASP ZAP is an open-source web application security scanner. It is designed to be used by both developers and pentesters during the development process. OWASP ZAP provides a number of features that make it unique among web application security scanners.
OWASP ZAP’s features include the ability to intercept and modify requests, a powerful spider that can crawl complex applications, and a robust set of security checks. OWASP ZAP is also highly customizable, so it can be adapted to fit the specific needs of any organization.
Organizations can use OWASP ZAP to find and fix security vulnerabilities in their web applications before they are exploited by attackers. OWASP ZAP is an essential tool for anyone who is serious about web application security.
This information was updated as of 01 January 2022. Changes may have occured since then.
Please help us improve by sharing your feedback to techhorizon@and.digital. Thank you.
Version 5 of the popular JUnit testing framework for the JVM. JUnit is a framework for writing repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks.
JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage
JUnit 5 is the 5th generation of the popular JUnit testing framework for the JVM based on Java 8 and compatible with Java 9, 10, and 11.
The JUnit Platform serves as a foundation for launching testing frameworks on the JVM. It also defines the TestEngine
API for developing a testing framework that runs on the platform. Furthermore, the platform provides a Console Launcher to launch the platform from the command line and build plugins for Gradle and Maven as well as a JUnit 4 based Runner for running any TestEngine
on the platform.
JUnit Jupiter is the combination of the new programming model and extension model for writing tests and extensions in JUnit 5. The Jupiter sub-project provides a TestEngine
for running Jupiter based tests on the platform.
JUnit Vintage provides a TestEngine
for running JUnit 3 and JUnit 4 based tests on the platform.
Mockito is a mocking framework for Java. Mockito allows convenient creation of substitutes of real objects for testing purposes. Enjoy clean tests with mock objects, improved TDD experience and beautiful mocking API.
Technically speaking, Mockito is a Test Spy framework. Usually developers use Mockito instead of a mocking framework. Test Spy framework allows to verify behaviour (like mocks) and stub methods (like good old hand-crafted stubs).
Pact is a code-first tool for testing HTTP and message integrations using contract tests. Contract tests assert that inter-application messages conform to a shared understanding that is documented in a contract. Without contract testing, the only way to ensure that applications will work correctly together is by using expensive and brittle integration tests.
SoapUI is the world's leading Functional Testing tool for SOAP and REST testing. With its easy-to-use graphical interface, and enterprise-class features, SoapUI allows you to easily and rapidly create and execute automated functional, regression, and load tests. In a single test environment, ReadyAPIvides complete test coverage - from SOAP and REST-based Web services, to JMS enterprise messaging layers, databases, Rich Internet Applications, and much more.
Cypress is a next generation front end testing tool built for the modern web.
Cypress is most often compared to Selenium; however Cypress is both fundamentally and architecturally different. Cypress is not constrained by the same restrictions as Selenium.
Cypress enables you to write all types of tests:
Cypress can test anything that runs in a browser.
Cypress comes fully baked, batteries included. Here is a list of things it can do that no other testing framework can:
Enzyme is a JavaScript Testing utility for React that makes it easier to test your React Components' output. You can also manipulate, traverse, and in some ways simulate runtime given the output.
Enzyme's API is meant to be intuitive and flexible by mimicking jQuery's API for DOM manipulation and traversal.
Jasmine is a Behavior Driven Development testing framework for JavaScript. It does not rely on browsers, DOM, or any JavaScript framework. Thus it's suited for websites, Node.js projects, or anywhere that JavaScript can run.
PHPUnit is a programmer-oriented testing framework for PHP. It is an instance of the xUnit architecture for unit testing frameworks
The core library, DOM Testing Library
, is a light-weight solution for testing web pages by querying and interacting with DOM nodes (whether simulated with JSDOM
/Jest or in the browser). The main utilities it provides involve querying the DOM for nodes in a way that's similar to how the user finds elements on the page. In this way, the library helps ensure your tests give you confidence that your application will work when a real user uses it.
The core library has been wrapped to provide ergonomic APIs for several frameworks, including React, Angular, and Vue. There is also a plugin to use testing-library queries for end-to-end tests in Cypress and an implementation for React Native.
https://testing-library.com/docs/react-testing-library/intro/
Pa11y is a command line tool that can be used to test the accessibility of web pages. It can be used to generate reports on the accessibility of web pages, and can be configured to run automatically as part of a continuous integration or continuous delivery process.
We recommend doing this on all sites
Storybook is a tool for building UI components in isolation. It helps streamline the process of building and testing components and documenting their various options. It is incredibly useful for agile teams as it assists in separating the component from its context within a wider application, and provides a searchable catalogue of components already built within a project.
Storybook's sandbox allows development teams to easily develop for hard-to-reach states, and to mock various use cases for a component, and keep them all documented as stories. This record makes it easy for everyone on a product team to see how a given component should behave in any number of possible circumstances.
We are committed to ensuring the completeness and quality in our digital products, and we believe that Storybook offers the most robust way to develop complex UIs. The ability to decouple states and data and develop and test against these without needing to mock entire pathways through an app is incredibly valuable, and Storybook's integration with testing tools makes testing our work significantly easier.