End-to-End and Migration Testing
End-to-end testing checks real-world scenarios from start to end. This is done to ensure, for example, that the network behaves exactly the same as it would when triggered by a customer's smartphone.
End-to-end testing checks real-world scenarios from start to end. This is done to ensure, for example, that the network behaves exactly the same as it would when triggered by a customer’s smartphone. These tests use real devices, meaning there is no need for injections to trigger core functionality. The advantage of using real devices instead of using a simulated input is that you can be confident in the validity of the device behavior and test outcomes.
End-to-End Migration Testing
Migration testing creates time-sensitive challenges, for example, when moving subscribers from an existing system to a new system. These tests must typically be performed within a very small timeframe. For example, overnight or during a brief period of time in which few customers access a network’s functionality. By comparison, end-to-end tests of products that have not yet reached the market have more flexible timeframes.
Manually executing end-to-end migration tests means only a tiny subset can be executed before a decision must be made about whether to use the new system or return to the old one. Therefore, automating this type of testing is critical to ensuring a smooth migration.
By automating end-to-end tests with QiTASC, it’s possible to continually execute several hundred test cases in a few hours. This results in a higher test coverage and data output. For end-to-end migration testing, this is exceptionally useful for making informed decisions about whether or not to proceed with the migration or revert to the old state.
intaQt includes an extensive collection of built-in steps that cover all scenarios that a user in the live network could experience from the simple to the complex, including:
- intaQt Telephony: Whether placing a call, sending an SMS or downloading data, intaQt supports you in creating test cases that reflect real-life behaviours.
- Configure tariffs in the intaQt Rater, to ensure that calls, texts or data events are charged accurately.
- Access intaQt’s suite of Built-ins, which provide out-of-the-box functionality for database connections, utility functions, protocol testing as well as accessing and manipulating different file types.
- The intaQt Audio Service tests audio-related characteristics, such as speech channel quality and checking that the correct voice announcements are triggered under different circumstances.
End-to-End Test Case Example
Feature: callCompoundStep Scenario: callCompoundStepScenario Given a phone as A: * of type Android * where operator == "3 AT" * with profile Vienna And a phone as B: * of type Android And A starts a call to B as MYCALL: * detect incoming call within 10 seconds * call duration is 7 seconds * caller ends the call * caller connects within 5 seconds * callee connects within 5 seconds * caller dials nat format * callee expects signaled number in any format * ringing duration is 8 seconds And expect the call MYCALL to start ringing And expect the call MYCALL to connect And expect the call MYCALL to disconnect
QiTASC’s integrated development environment provides features that improve your productivity and the quality of your tests:
- Auto-completion, go-to declarations and rename refactoring help you write, find and edit your tests with ease.
- the intaQt Phone Plug-in, which shows a project’s phones in real time and enables interacting with remote phones from within intaQt Studio.
- Error inspections, line markers and notifications help you identify problems with your code as you write it.
- Create templates, in-code documentation, and more!
QiTASC Product Add-ons
Instantly verify end-to-end and migration test output as an additional quality check. intaQt Verification may be executed online, as an intaQt test case is being executed, or offline, for example, if data are only collected at the end of each day. In both cases, the following functionality is included with intaQt Verification:
- Selectors - These tell intaQt Verification which records to choose. For example, if only voice call tickets should be used.
- Verification Rules - Rules define the type of “checks” that will be performed against the selected records. For example, checking the difference between two properties like amounts of data used, or the difference in a customer’s account balance.
- Special functions for calculating properties and values such as dates, times and numbers within a test case.
intaQt Client is used to execute entire intaQt test projects from the command line, and can be integrated into continuous integration (CI) environments like Jenkins and TeamCity. Combined with intaQt’s parallel execution functionality, test suites can be run and re-run between very short development cycles.
intaQt Client also provides configurable features that allow users to:
- Specify how often to retry failed tests.
- Pass parameters to specify ports, configurations or hosts for different projects.
- Upload local project changes to the server before execution.
- Create XML configuration files to create complex test suites with tags.
ConQlude Reporting Service
Collect, manage and export intaQt test case project data manage defects, which can be accessed by all members of your project’s team. ConQlude automatically uploads all test reports, logs, media attachments and metadata to a centrally-accessible, secure web interface. conQlude provides approval workflow features and can be integrated into most test management systems and defect tracking systems. Our reporting interface ensures that users can remain confident that all test execution details are 100% correct, up-to-date and conform to formats recognized by external project management systems.
Are you looking for a truly end-to-end solution that goes beyond automating test cases, but rather entire test environments, reporting and configurations? Get in touch to inquire about demos, proofs of concept or to learn more about how intaQt excels at end-to-end testing!