Software testing is the process of investigating an application and finding errors in it. The difference between testing and simply exploring is that testing involves comparing the application’s output to an expected standard and determining whether the application functions as expected. In other words, the tester may need not only to ensure that the application displays a list of values, but also to verify that the list contains the appropriate values.
So, the basic test sequence includes --
Defining the expected output.
Performing test actions (feeding the appropriate input).
Gathering the application output and comparing it to expected result (baseline data).
Notifying developers or managers if the comparison fails.
Automated testing is the automatic execution of software testing by a special program with little or no human interaction. Automated execution guarantees that no test action will be skipped; it relieves testers of having to repeat the same boring steps over and over.
TestComplete provides special features for automating test actions, creating tests, defining baseline data, running tests and logging test results. For example, it includes a special "recording tests" feature that lets you create tests visually. You just need to start recording, perform all the needed actions against the tested application and TestComplete will automatically convert all the "recorded" actions to a test. TestComplete also includes special dialogs and wizards that help you automate comparison commands (or checkpoints) in your tests.
【翻译:】Automated Testing(自动化测试)
软件测试是通过对被测试程序进行分析并发现程序错误的一个过程,然而测试和简单的检测分析是不同的,测试工作不断包括保证应用程序输出一个预期的结果,而且还确保程序的功能是否和预期的一致。换句话说,测试人员不但要保证程序能正常输出一些数据,而且还要保证数据的准确性。
所以,一个基础的测试顺序如下:
确定预期输出结果
执行测试操作(输入适当的测试数据)
比较实际输入结果和预期输出结果
如果实际结果和预期结果不一直,则反馈给开发人员或者项目管理人员。
而所谓自动测试,就是指通过一个特殊的自动化工具来执行软件测试工作,基本上很少或者根本不用人为干预,自动化测试可以确保测试过程不会被遗漏,同时通过自动化测试可以使测试人员能从大量的、重复的一遍遍的测试工作中解放出来。
Testcomplete为自动化测试提供了一些特殊的功能,诸如:创建测试、准备测试的基准数据、执行测试并记录测试结果。Testcomplete通过对应用程序进行“钩子”调用,通过其录制功能,使你对于程序的任务操作动作它都能记录下来作为测试过程进行回放。同时,还可以通过图形界面在测试过程中设置各种检查点。
【个人PS】:自动化测试,自动化测试,一个很大的概念,然而在实际的测试工作有是最具体的,或者也是被领导或者那些不懂欧诺的人叫的最响的,不搞都不行。搞了又因为产品不稳定,而且特别是还不是真正的产品,还是当项目来做的产品,往往都需要跑到客户现场实施,开发一套自动化测试脚本,真正的发挥效果还真不好说。所以多么美好的东西,如果生搬硬套的话就成了悲剧。希望同行们也能在测试工作中正确的理解自动化测试实施的一些必要条件和前提,这样才能使自己工作的效应最大化。否则只是做些面子工程。就好比用loadrunner出个报告一样无意义。