Dynamic testing and Debugging tools

Source: Internet
Author: User

I. Introduction of DT10

The DT10 is an automated software testing and debugging tool that does not rely on any OS and CPU, supports C + +, Java, C # languages, tools for dynamic testing and debugging, and enables long-time tracking of runtime target programs for each development phase.

DT10 is the only tool in the dynamic testing tool that can implement gray-box testing. Not only the tests inside the software, but also the hardware states such as the sensors around the CPU and the ports are verified along with the execution path, so you can test the entire operation of the software and hardware at the same time. The test results are automatically generated by the report. Developers and QA staff can use this tool to improve product quality and make work more efficient.

On the interface of DT10 software, the design values of running time, cycle time, parameters and variables can be entered. In addition to the input design values can be managed on the same page (list), can also be exported as a design book. These design values, which will be used during the testing process, can be compared with the actual measured values on the target board, such as when there is a discrepancy between the design values, the system will have a warning message pops up, you can use such a warning to grasp the situation of the problem.

Ideal for tracking and debugging long-running software. Because it can be obtained and analyzed: task changes, function cycle time, run time, coverage, variable value changes, so the efficiency of the whole debugging will be greatly improved. Even if the problem is not easy to reproduce, as long as it can reproduce 1 times, you can also analyze the reason from the tracking data. So it's a very efficient way to run tests and corrections over a long period of time.

Main function points:

<!--[if!supportlists]-->u <!--[endif]--> does not rely on operating system and target board CPUs, supports any processor and embedded operating system;

<!--[if!supportlists]-->u <!--[endif]--> can support the overlay testing, performance testing, and bug locating debugging of C/C + +, Java, C # language;

<!--[if!supportlists]-->u <!--[endif]--> is flexible to connect to target devices. Can support directly through the network port, serial port, GPIO, asynchronous bus, SD card, can bus and other connection methods, in particular, directly through the network card and the serial port directly connected to the target device, without connecting the line, greatly enhancing the ease of use of DT10 and can support the diversity of hardware environment;

<!--[if!supportlists]-->u <!--[endif]--> hardware and software synchronization testing. DT10 provides a analog box connection box, can monitor 4 digital signal output port and 2 analog signal port, can synchronously detect the variable value, real-time view hardware signal output port and variable changes and software implementation, so as to implement software and hardware synchronization test;

<!--[if!supportlists]-->u <!--[endif]--> to track target device execution for long periods of time, up to 32 days of tracking data recording

<!--[if!supportlists]-->u <!--[endif]--> playback debugging function, providing visual functions to perform tracking reports for easy bug analysis, especially difficult to reproduce bugs or occasional program crash errors

<!--[if!supportlists]-->u <!--[endif]--> Dynamic coverage testing, providing system test coverage analysis, support for statement coverage, branch coverage

<!--[if!supportlists]-->u <!--[endif]--> performance test to detect function execution time, cycle time, and execution time between any two lines of statements in the statistical Code for performance Analysis and evaluation

<!--[if!supportlists]-->u <!--[endif]--> variable tracking, tracking the real-time change of variable values during real execution of the program, and providing visual graphical reports

<!--[if!supportlists]-->u <!--[endif]--> Validate design values, regression test. Dtplaner defines the design value (expectation) of the function execution time, the design value of the variable (expectation), the execution time of the target device in real time, or the value of the variable once it exceeds the range of the design value, a warning error will be given

<!--[if!supportlists]-->u <!--[ENDIF]-->CPU pressure monitoring, switching monitoring of multiple tasks, system resource statistics for each task;

<!--[if!supportlists]--> II, <!--[endif]-->dt10 composition

Major versions:

<!--[if!supportlists]-->1. <!--[endif]-->dt10 hardware-in-circuit version (Hardware online test)

<!--[if!supportlists]-->2. <!--[endif]-->dt10 software-in-circuit version (software online test),

<!--[if!supportlists]-->3. <!--[Endif]-->native version (host platform test

<!--[if!supportlists]--> three, <!--[endif]--> Technical parameters:

<!--[if!supportlists]-->l <!--[endif]--> without OS and CPU limitations, can be debugged without limitation

<!--[if!supportlists]-->l <!--[endif]--> for long-time tracking of runtime target programs for up to 32 days of continuous tracking

<!--[if!supportlists]-->l <!--[endif]--> supports multiple languages, including C/c++/c#/java code

<!--[if!supportlists]-->l <!--[endif]--> can automatically insert test points for function entry/exit/branch, or manually insert code anywhere

<!--[if!supportlists]-->l <!--[Endif]-->6 type of connection, the customer can choose: Asynchronous bus connection, SD card i/f connection, GPIO Connection, Ethernet connection, can connection, UART connection.

<!--[if!supportlists]-->l <!--[endif]--> through function tracking, you can pivot the execution path. This image can be used to display the detailed execution path when the function internal processing and the interrupt condition occur. At the same time can be compared to the source code, is a convenient and intuitive operation of the function

<!--[if!supportlists]-->l <!--[endif]--> can get the state of the hardware (e.g. voltage). The DT10 can be used as an oscilloscope to detect voltage and logic. In addition, variable values and task changes will also be displayed on the same page, so you can use the software and hardware tracking results to confirm the hardware and software coordination is not a problem.

<!--[if!supportlists]-->l <!--[endif]--> can track changes in variable values for a long time. Because a test point is inserted to export the value of the variable, the value of the variable is observed as the time axis changes. You can combine most of the variable images, or you can display the maximum and minimum values for each variable on the same page (list).

<!--[if!supportlists]-->l <!--[endif]--> easy to master "process occupancy". The job share can be displayed by image, which can be seen at a glance to see which part of the task is higher. Because at that point in time, you can directly navigate to the actual processing location, so you can know exactly which execution path problem, it is easy to understand the problem situation.

<!--[if!supportlists]-->l <!--[endif]--> for easy "run Time" and "Cycle Time". The running time of all functions (maximum, minimum, average time, etc.) can be displayed after statistics. In addition, you can get a "processing time" report between any two points, which makes it very easy to find areas that differ from the existing design values.

<!--[if!supportlists]-->l <!--[endif]--> automatically compare actual and design values. The desired "Run Time" and "variable value" can be set in advance. In the target

<!--[if!supportlists]-->l <!--the actual execution on the [endif]--> board, you can compare test values and design values. It is not only easy to find the place where the exception occurred in the program code. You can also reuse these design values if the next version is developed for subsequent projects. This can make software development more efficient.

<!--[if!supportlists]-->l <!--[endif]--> to pivot "processing time fluctuations". If you use the "Run-time bar graph", you can find the actual processing

<!--[if!supportlists]-->l <!--[endif]--> time is different from the design value. In addition, you can see changes in processing time on the target board (fluctuations), because you can know the processing time of the exception, so you can find/fix "time-related potential problems" in advance.

<!--[if!supportlists]-->l <!--[endif]--> can get coverage for integration/system testing. You can get statement coverage and branch coverage. For both integration and system testing, coverage data can be obtained from the user's perspective for regular testing.

<!--[if!supportlists]-->l <!--[endif]--> supports chips with very small memory resources to get coverage in a small target environment, Most of the industry testing tools are not able to test and gain coverage in a target environment of very small resources, such as a single chip, DT10 can do

<!--[if!supportlists]-->l <!--[endif]--> through the event test point to confirm status changes and order changes

<!--[if!supportlists]-->l <!--[endif]--> to measure CPU load, analyze CPU load measurement data, and graphically display CPU load changes over the time axis

<!--[if!supportlists]-->l <!--[endif]--> test reports are automatically generated, run time and coverage measurement results, and reports can be generated automatically. For developers, it doesn't take time to do a test report, but to be more focused on development.

Effectively improve the test efficiency of the new version, you can insert the test point only in the same place as the previous version. If combined with the coverage test, there will be a multiplier effect. In the case of a version update, you can test only the updated program code to minimize the amount of program code in the test, which is the most efficient way to test.

Dynamic testing and Debugging tools

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.