Features

Handcrafted for Eclipse

Q7 has been made by Eclipse-centric engineers for Eclipse engineers, who need to use automated functional and UI testing in their development process. The philosophy behind Q7 design and development allows us to deliver an outstanding tool for teams working on Eclipse products.

As a tool handcrafted for Eclipse, Q7 understands Eclipse application internals and integrates closely with Eclipse Technologies, going beyond UI testing and provides out of the box support for Eclipse Platform, SWT/JFace, IDE, GEF/GMF, and others.

Model the State

The ideal tests should possess at least two major characteristics: A Test Case Is Independent (which means a test case should not rely on the results of the previously executed test case) and An Unsuccessful Test Case Should Not Cause Others to Fail.

We believe that it's a job for the testing tool itself to manage the state of the Application Under Test, and we are going beyond that with Q7 and its revolutionary concept of State Management. Using sophisticated AUT state management and Runtime Intelligence, Q7 lets you develop/record your test in any state of the application, execute test cases in any order, freely combine them into any type of Test Suites, and automatically load balance test execution among dozens of servers in your Corporate Cloud using Q7 Server.

Productivity

Being focused on team productivity, an automated testing tool should be intelligent enough to minimize the configuration and integration overhead, significantly decrease the learning time for QA engineers and release software engineering resources and let these teams focus on delivering valuable products.

This philosophy allows QA engineers to easily automate their manual tests.

Runtime Intelligence and Code Instrumentation take the load off of QA engineers and developers. This allows them to automate parts of their job that are currently done manually. We focus on minimizing setup configuration at every stage to provide this path to automation. This starts from launching AUT and running basic tests through running automated tests with Maven/Tycho plug-in.

Develop with Modern IDE

Well-designed Test Suites should satisfy several fundamental objectives: they must be maintainable, they must be modular, they must be robust, they must be well documented, and they should be built of reusable components.

Q7 comes with a modern IDE to work with test artifacts, which are developed and documented using Q7 Contexts and the Eclipse Command Language. It has all the features expected from the today's IDEs, including Code Refactoring, Advanced Search, Tagging, VCS Support, and advanced Eclipse integration to fit easily into your development process.

Use of a Common Command Language

Many teams come across the same confusion and misunderstandings while using agile practices such as TDD. Programmers want to know where to start, what to test and what not to test, what to call their tests, and how to understand why a test fails. Using Java (or other general purpose programming) language would not resolve this confusion; especially when it comes to UI tests – even the test author can quickly be in doubt about the purpose of a given test.

Q7 comes with the Eclipse Command Language, which evolved to encompass the wider picture of agile development and automated acceptance testing. It lets all the team members, including QA, programmers, and managers speak the same language, giving a consistent and easily understood understanding of test artifacts and, as a result, on product requirements, business values delivered, and the current status of the project under test.

Enable Agile

We are agile, and if you are like us, you understand the importance of automated acceptance testing in the agile development process. Everyone in an agile team can perform testing tasks. An agile tester is a professional who embraces change, collaborates well with both business and technical people, and understands the concepts of using tests to drive development and document requirements.

Q7 was designed to make your development process more agile. From conception to the final implementation of every component (Runtime Intelligence, IDE, Q7 Server, Maven/Tycho plugin) — everything was done to make you more agile and let your team focus on important tasks such as delivering greater value to the customer faster and with better quality.