zoukankan      html  css  js  c++  java
  • 自动化测试

    自动化测试(Automated Test)

                      侧重说明由测试工具自动地执行某项软件测试任务,自动化处理范围比较小。测试计划,设计和管理由其他手工完成

    测试自动化(Test Automation)

                    侧重说米国整个测试过程由计算机系统自动完成,体现更理想 的自动化思想。不仅要求工具完成测试的执行,而且要求测试的设计和管理也有系统自动完成。

    测试环境的搭建和设置,自动上传软件包到服务器并完成安装
    脚本自动生成,根据UML状态图,时序图等生成可运行的测试脚本
    测试数据的自动产生,可以通过SQL语句在数据库产生大量的数据,用于测试
    测试操作步骤的自动执行,包括软件系统的模拟操作,测试执行过程的监控
    测试结果分析,实际输出和预期输出的自动对比分析
    测试流程的自动处理,包括测试计划复审和批准,测试任务安排和执行,缺陷生命周期自动化处理

    当然,以测试人员的目标来说,测试自动化是追求的理想境界,虽然说不现实,但是我们每时每刻都在努力着。

    不同的测试任务,选用的自动化解决方案是不同的,。单元测试和开发结合非常密切,其自动化测试一般建立在继承开发环境上。功能测试和系统测试有较大的区别,功能测试需要关注图形用户界面(GUI),性能测试采用底层通信或应用程序接口(application programming Interface ,API)等方式来实现和系统的交互作用。

    在自动化测试过程中,需要遵循一个有效的原则才能到达所期望的目标

    自动测试反问的考量

    自动化无法处理一些模糊结论的判断和验证,适合非常明确的任务,来解决某个特定的问题;

    自动化测试比较不适合新功能的测试,比较适合回归测试;

    单元测试测试中,自动化测试工具和开发工具集成一起,自动化测试程度比较高且全面----xnuit
    集成测试阶段,自动化测试工具的作用是间接的,一般通过基本功能的验证来验证系统的集成
    系统测试阶段,一般进行压力测试,性能测试,可靠性测试;功能测试的逻辑,数据,API验证比较适合自动化测试;GUI,易用性比较适合手工完成
    验收测试,一般手工完成测试

    软件测试自动化实现的原理和方法:直接对代码进行静态和动态分析,测试过程的捕获和回放,测试脚本技术,虚拟用户技术以及测试管理技术


    1.代码分析(静态,动态分析。Selenium IDE采用JavaScript 代码对web页面DOM元素进行操作,从而实现对页面的自动化测试。所有命令对应的API都是通过Selenium这个对象的原型方式(prototype)进行定义或者扩展的。)

    eg:Selenium API 中doClick代码(this.browserbot是很重要的对象)

    Selenium.prototpe.doClick=function(locator){
    /**
    *Clicks on a link,button,checkbox or radio button.If the click action causes a new
    *page to load (like a link usually does),call waitForPageToLoad.
    *
    *@param locator an element locator
    *
    */
    
    var element=this.browserbot.findElement(locator);
    this.browserbot.clickElement(element);
    }

    1.2代码扩展

    解压selenium-ide.jar然后用以下代码保存为selenium-api.js代替原来的同名文件。

    ///Create a sample for hello world
    Selenium.prototype.doHelloworld=function(){
    throw new SeleniumError("Hello world");
    };

    Selenium RC 设置HTTP代理(HTTP Proxy).测试机向代理服务器发出请求,然后代理服务器向应用服务器转发请求,并接受服务器的响应,传送给测试机。欺骗浏览器。

    要是用selenium RC server 能够运行HTTPS,IE需要配置,firefox有自己的配置文件(Profile).

    Selenium RC 证书selenium-1.0-beta-1sslSupport下的cybervillainsCA.cer倒入到IE

    2.GUI对象识别

    3.DOM对象识别 (ieinspector)
    4.脚本技术(线性,结构化,关键字,数据驱动)

    5.自动化比较技术(自动化测试时,预期输入是事先定义的,要么在脚本或数据库中,将捕获的结果和预期结果进行比较)

  • 相关阅读:
    MYSQL profiling分析语句
    进程状态与僵尸进程、孤儿进程
    Nginx跨域设置
    Redis的应用场景
    Nginx的作用
    cgi、fast-cgi和php-fpm的介绍(作用)
    CoreDump开启和Swoole Tracker 3.0配置
    好题总结
    Atcoder总结 Part III
    Atcoder总结 Part II
  • 原文地址:https://www.cnblogs.com/cloud-test/p/3530221.html
Copyright © 2011-2022 走看看