• ruby+seleniumwebdriver一步一步完成自动化测试(2)—–一个测试用例


    上一篇的小例子可以正常执行通过,但是这并不代表就可以按照这个思路写测试代码了。自动化测试与手工测试是一样的,要有测试用例,有执行有结果,但是上一篇的例子里并没有。

    众所周知,java开发用JUnit进行单元测试、C#开发用NUit进行单元测试,selenium-webdriver也需要一个这样的测试框架来执行测试用例,这个框架可以用test::Unit,也可以用文中所用的rspec

    目标:利用测试框架rspec创建一个测试用例,运行上一节的代码

    1.安装rspec

    命令行中执行命令:gem install rspec

    2.D盘下新建目录test002

    3.test002中新建文件夹spec

    4.打开编辑器SciTE新建一个文件

    5.文件中编写如下代码

    #encoding: gbk
    
    require 'selenium-webdriver'
    
    describe "soso mainpage login" do
    
    it "should return username and password is wrong" do
        dr=Selenium::WebDriver.for :chrome
        url='http://www.soso.com'
        dr.get url  
    
        link=dr.find_element(:link_text=>'登录')
        link.click
        
    
        dr.switch_to.frame('login_frame')
        sleep 2
        dr.find_element(:id=>'u').send_keys("test")
        dr.find_element(:id=>'p').send_keys("test")
    		dr.find_element(:id=>'verifycode').send_keys("aaaaaa")
        dr.find_element(:id=>'login_button').click  
    
        dr.find_element(:id=>'err_m').text.should eql ("您输入的帐号或密码不正确,请重新输入。意见反馈")
    end #it  
    
    end #describe
    

      

    5.保存文件至工作文件夹下,文件名为:soso_login_spec.rb

    6.命令行执行命令:

    cd 工作目录

    rspec -f doc

    soso mainpage login
      should return username and password is wrong
    
    Finished in 11.06 seconds
    1 example, 0 failures
    

      证明测试用例运行成功

  • 相关阅读:
    Nginx有哪些作用?
    MYSQL如何优化?
    jdk1.8新特性
    [javase基础] JDK JRE JVM的区别?
    JDBC中如何进行事务处理?
    JDBC、ibatis(mybatis)、Hibernate有什么不同?
    java面试题最容易犯错
    Spring高频率面试题
    python pip whl安装和使用
    深入理解 Linux的进程,线程,PID,LWP,TID,TGID
  • 原文地址:https://www.cnblogs.com/timsheng/p/2682216.html
Copyright © 2020-2023  润新知