精华内容
下载资源
问答
  • 原文链接https://blog.csdn.net/u011541946/article/details/777452171. 为什么要做接口测试 在日常开发过程中,有人做前端开发,有人负责后端...一般我们大部分人都是做功能测试,很多是界面的功能测试。如果你理...

    原文链接https://blog.csdn.net/u011541946/article/details/77745217

    目录

     

    1. 为什么要做接口测试

    2.什么是接口测试

    3.接口的分类

    HTTP请求方法(原文链接)

    4、设计接口测试用例方法     

    1.接口测试的流程

    2.为什么要写用例

    3、接口主要设计用例点

    4、接口测试的工具


    1. 为什么要做接口测试

           在日常开发过程中,有人做前端开发,有人负责后端开发。接口就是连接前后台,由于前端开发和后端开发的速度可能不一样,例如后端开发好了,但是前端没有开发。那么我们是不是就不需要测试呢?大部分人都是做功能测试,很多是界面的功能测试。

    如果你理解了接口测试,那么你就可以针对接口进行测试。

    同时,接口测试也是后端测试常见的一种测试种类。
        

           看看测试金字塔,接口测试是在中间部分,底层是单元测试,最顶端是界面测试。从三者的面积大小来看,单元测试和接口测试,才是重点,而界面测试真的是太少。这个面积,你可以理解为代码覆盖,也可以理解为测试的工作量。这里要提出一个观点:现在国内公司越来越重视接口测试,之前的几年,很多测试资源都放在了界面的测试,今后会逐步放在接口测试功能,性能,自动化和稳定性测试上面。白盒测试目前还是开发自己测试,有些大公司,注重软件产品质量,也会安排一些有代码能力的测试人员,去辅助和指导开发人员进行单元测试,共同保证软件的质量。

    2.什么是接口测试

          一般来说,测试接口,就是指测试接口的功能,性能和稳定性测试,当然可能还有安全性测试。

          这个入门系列会让你掌握接口的功能测试。一般,来说我们听说到的接口基本上都是指HTTP或者HTTPS协议的接口测试,也就是一些web服务请求。一个软件项目中,有很多接口,少的有几十个,多的有几百上千个接口。这个时候,我们没有软件界面,没有具体的测试场景,只有一个接口描述文档。我们需要把接口这样抽象的东西,通过软件测试的理论和方法去测试接口,找出接口的功能和安全性的缺陷。

         接口有内部接口和外部接口。内部接口就是开发人员自己开发的接口。外部接口,好比网站调用微信支付和支付宝支付接口。还有一些模块与模块之间的接口。学习过Java或者用过selenium的人,应该对接口有了解。你的自动化脚本调用了很多selenium的接口。

    3.接口的分类

           在开始做接口测试之前,有必要了解一下接口的分类。这里的分类,主要是HTTP请求方法分类。

    HTTP请求方法(原文链接

    根据HTTP标准,HTTP请求可以使用多种请求方法。

    HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法。

    HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。

    序号 方法 描述
    1 GET 请求指定的页面信息,并返回实体主体。
    2 HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头
    3 POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。
    4 PUT 从客户端向服务器传送的数据取代指定的文档的内容。
    5 DELETE 请求服务器删除指定的页面。
    6 CONNECT HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
    7 OPTIONS 允许客户端查看服务器的性能。
    8 TRACE 回显服务器收到的请求,主要用于测试或诊断。

     

    附:GET和POST的区别,可以参考另一篇文章https://blog.csdn.net/weixin_30363263/article/details/80060456,这个问题,面试中经常被提到。简单来说,可以从三个方面去回到这个区别:方式、大小、安全

    1).方式

    方式指的是参数的传入方式,GET方法一般是指获取服务器上的数据,参数直接跟着URL后边,直接可以放到浏览器地址栏里,例如登录就是采用GET方法。而POST方法是指客户端给服务器上提交表单数据,所以POST是通过表单提交的,例如你网页上的调查问卷和答题就是采用POST方法。

    2).大小

    上面已经知道GET是直接在浏览器地址栏输入,由于浏览器有限制,一般整个URL的长度可以很长,但是不能超过2049KB的大小限制,而这个POST就没有大小限制。

    3).安全性

    由于GET的参数是在浏览器地址栏直接拼接,暴露在互联网中,肯定不安全。POST是通过表单数据提交,相对比GET方法更安全。

    4、设计接口测试用例方法     

      前面我们已经介绍了什么是接口测试和接口测试的意义。在开始接口测试之前,我们来想一下,如何进行接口测试的准备工作。或者说,接口测试的流程是什么?有些人就很好奇,接口测试要流程干嘛?不就是拿着接口文档直接利用接口测试工具测试嘛。其实,如果只是三五个接口,你可以这么做一个临时的接口测试。但是,如果是上百个接口,或者,你们公司的这个项目,第一次做接口测试,那么,我们还是很有必要遵守测试的流程。

    1.接口测试的流程

    接口测试和功能测试一样,流程也大致遵守V模型,请看下图

           一般来说,接口测试左边的每个阶段,每个公司可能都侧重点不同,例如有些公司就没有需求讨论和需求评审这个阶段。不管如何,用例设计,这个是少不了,而且是重点,要花时间的阶段。只有覆盖全面的接口测试用例,才能有比较好的测试接口覆盖率,才会找出更多的接口的Bug.

    2.为什么要写用例

             功能测试用例,大家都写过。接口测试用例,很多人没有写过。在写之前,我们来讨论下,为什么要写接口用例。

    1.           理清思路,避免漏测
    2.           提高测试效率
    3.           跟进测试进度
    4.           告诉领导做过
    5.           跟进重复性工作,回归功能使用

           上面五点,结合自己测试实际经验,应该来说是很好理解和认同的。有用例,就有思路,避免漏掉测试点。跟着用例测试,避免随机测试那种没有目的性的测试,提高测试效率。有用例,上级问你完成的进度,你好用数据回答。有用例,用来标记你执行的结果,证明你做过测试。避免将来发生问题,人家说你没有测试,有数据和证据说话。接口测试也需要重复跑,跑几轮,或者用自动化天天跑。这样的重复性工作,用例可以保证每次重复做的是一样的情况。

    3、接口主要设计用例点


    主要从四个方面来设计接口用例:功能,逻辑业务,异常,安全

    功能

    1)功能是否正常;

    2)功能是否按照接口文档实现      

    举例:有些添加到购物车,需要登录才能添加。也就是业务要求不支持游客添加购物车功能,如果设计一个没有登录的用户,然后去测试添加购物车接口,结果接口能添加到购物车,说明功能不正常,不符合需求和接口文档描述。

    逻辑业务:是否依赖业务;

    举例:该接口调用之前,需要调用登录接口,如果不登录也能请求数据,不符合业务规则。
     

    异常:参数异常和数据异常
    参数异常:关键字参数,参数为空,多,少参数,错误参数

    数据异常:关键字数据,数据为空,长度不一致,错误数据
             举例:不管数据异常还是参数异常,测试点差不多,一个参数有key和value,key表示参数,value表示数据。第一,看看参数和数据能不能支持关键字,例如Java中的保留关键字等等。第二个就是参数和数据都为空,看看是否做了判断。第三个,参数多和少,例如有两个参数的接口,你需要设计一个三个参数的用例,一个只有一个参数的用例。数据那边长度不一致,例如设计很长的字符串是否支持,因为数据库创建表过程都设置好了每个字段的长度。输入错误的参数和数据,例如故意输出单词等等。

    安全测试用例设计:

    1. cookie:有cookie才能获取数据,如果不带cookie还有信息返回,说明有问题
    2. header:正常接口带header信息,删除header看是否能够返回数据。
    3. 唯一识别码:app手机识别码,一般是唯一的。

           安全测试主要从上面三点检查。第三个是唯一识别码,主要是指app上手机的识别码,一般很少用到,除非很严格的接口测试,例如银行app登录,需要指纹,而指纹来源手机,一般有一个手机识别码判断过程。

    4、接口测试的工具

    目前,市场上有很多支持接口测试的工具。利用工具进行接口测试,能够提供测试效率。例如,加入让你一天完成100个接口测试任务,你觉得你加班能否完成。如果有工具,但是不是所有工具都能够支持你完成这个任务。下面我们就来挑选几个工具,简单介绍一下。

    1.我画了一个图

    1.fiddler

           首先,这是一个HTTP协议调试代理工具,说白了就是一个抓http包的工具。web测试和手机测试都能用到这个工具。既然是http协议,这个工具也能支持接口测试。稍后文章,我们会专门介绍fiddler这个工具。

    2.postman

           这是一款google工程师开发的一个插件,可以安装到chrome浏览器上。支持不同接口测试请求,能够管理测试套件和自动化运行,弱点在于,自动化断言功能不强大。不能和jenkins和代码管理库进行持续集成测试。但是,绝对是一个很好的半手工,半自动化测试工具,我一般在写自动化接口测试用例,会打开postman进行辅助测试和debug。这个工具也会稍后在文章介绍。

    3.wireshak

           这个是一款计算机上抓包工具,支持抓各种包,TCP,UDP,HTTP都支持。如果做底层网络数据测试,一般都需要用到它。作为接口测试,这个软件有点不友好。因为刷新数据太快,不好定位每个操作对应的接口。所以,我们不会进行过多介绍这个工具。

    4.soupUI

           这个是一个开源免费和,企业版收费的软件。在国外的接口测试,使用非常多。这个工具能够支持接口自动化测试和接口性能测试,也能支持和jenkins做持续集成测试。了解一下就可以,自己可以下载一个社区免费版,做一个demo试试。

    5.java代码做接口测试

           代码是万能,笔记工具也是代码开发出来的。为什么要用代码做接口自动化测试呢。因为,有些工具功能是有限制,很多公司,需要一些特定的功能,工具不支持,只好用代码进行开发。一般用Java做自动化测试,主要是利用httpclient.jar这个包,然后利用junit或者testng这样的单元测试工具,进行测试用例的开发,然后在jenkins上创建一个job,进行持续集成测试。

    6.Python代码做接口测试

          和Java一样,Python中利用一个很好,功能强大的第三方库requests,能够方便都创建接口自动化用例。python下单元测试框架,一般采用unittest。生成测试报告,一般选择HTMLTestRunner.py。同样,可以和jenkins做持续集成测试。

    7.LoadRunner

           不要以为LR只能做性能测试,loadrunner同样可以做接口自动化和接口压力测试。只是我们很多人,不会利用LR的函数,进行开发接口测试用例。

    8.JMeter

          JMeter同loadrunner一样,都是以性能测试出名,一般用JMeter也是做接口性能测试。例如java+Jmeter+ant+jenkins做接口性能监听测试。JMeter如何做接口测试,请看我JMeter系列文章。

          上面说了这么多工具,基本覆盖了接口功能测试,接口自动化测试,接口性能测试。这里提一下,在Python语言下有一个性能测试工具推荐:Locust。自己百度,安装下,很简单的web界面,感觉很不错,作为一个轻量级的协程测试工具。

    展开全文
  • 一般测试面试题

    2019-05-13 13:24:22
    1、Web测试与App测试的区别 App:兼容性是机型,升级,安装,耗电量,耗流量,弱网等 Web:兼容性是浏览器之间的兼容。会关注响应时间。...4、如何编写测试用例?根据什么编写?如何保证用例覆盖度? 考查点...

    1、Web测试与App测试的区别
    App:兼容性是机型,升级,安装,耗电量,耗流量,弱网等
    Web:兼容性是浏览器之间的兼容。会关注响应时间。
    2、如何提交高质量的缺陷报告单
    Bug可读性(复现步骤写清楚,环境描述清楚)
    刚入公司的话查看同事的bug是什么样子,学习他的bug。
    3、如何进行性能测试
    反问性能指标是多少,然后用工具测
    4、如何编写测试用例?根据什么编写?如何保证用例覆盖度?
    考查点:测试用例编写和方法,工具,对业务的把握
    根据需求编写测试用例,测试用例方法编写测试用例,参照第一款产品
    5、软件测试的分类
    黑盒,白盒,灰盒
    6、编写测试用例的原则
    百分百覆盖需求
    7、软件测试过程经过哪些阶段
    单元集成系统验收
    8、黑盒测试包含哪些内容
    冒烟测试 易用性 功能
    9、如何确定一个问题是不是bug
    根据需求
    10、bug的严重程度
    致命:导致系统崩溃 404 500
    严重:阻碍测试
    一般:等价类 边界值测试出来的
    轻微: 标点符号
    11、如何做有效的记录缺陷
    保证该缺陷能复现,有效的记录出来
    12、缺陷报告的准则
    简洁,清晰,准确,完整,一致

    展开全文
  • 实际上自动化测试就是自动化测试工具代替手工测试,即是模拟手工测试,从而利用所脚本执行测试用例,解决大量用例维护的问题。什么是自动化测试脚本?自动化测试项目也是有需要编码的部分。它并不是字面上的那样...

    什么是自动化测试?

    自动化测试,一般是指软件测试的自动化。自动化测试是把以人为驱动的测试转化为机器执行的一种过程。实际上自动化测试就是用自动化测试工具代替手工测试,即是模拟手工测试,从而利用所写脚本执行测试用例,解决大量用例维护的问题。

    什么是自动化测试脚本?

    自动化测试项目也是有需要编码的部分。它并不是字面上的那样完全取代手工测试,它需要编写测试脚本实现所设计的测试用例。

    编写脚本的同时也需要注意:检查测试数据的存在性、正确性以及对测试环境的依赖性考虑,若测试脚本环境比较复杂导致失败,查明测试脚本执行失败的原因等等。

    自动化测试现状

    软件测试的自动化,已经成为国内软件工程领域一个众所周知的课题;软件测试从业者都意识到软件测试这项工作走向标准化的一个必经之路就是要实现软件的自动化测试。

    目前国内的软件公司很多都还处于获取资本的原始积累阶段,整体行业没有将自动化测试重视起来。

    正确认识自动化测试

    1、自动化测试能大大降低手工测试工作,但不能完全取代手工测试。完全的自动化测试只是理论上的目标,实际上想要达到100%的自动化测试,不仅代价昂贵,操作上也几乎不可能实现。

    2、测试自动化的引入有一定的标准,要经过综合的评估,绝对不能理解成测试工具简单的录制与回放过程。

    3、自动化测试能提高测试效率,快速定位测试软件各版本中的功能与性能缺陷,但不会创造性的发现测试脚本里有没有设计的缺陷。

    4、自动化测试能提高效率,但对于周期短、时间紧迫的项目不宜采用自动化测试。

    自动化测试流程

    1:制定测试计划:明确测试对象、测试目的、测试的方法,确定无误后进行下一步;

    2:分析测试需求:根据测试计划和需求说明,分析测试需求,设计测试需求树,以便用例设计时能够覆盖所有的需求点。

    3:设计测试用例:通过分析需求,设计能够覆盖所有需求点的测试用例,形成专门的测试用例文档。

    4:搭建测试环境:测试环境的搭建,包括被测系统的部署、测试硬件的调用、测试工具的安装和设置、网络环境的布置等。

    5:编写测试脚本:根据自动化测试用例和问题的难易程度,采取适当的脚本开发方法编写测试脚本。

    6:分析测试结果、记录测试问题:及时分析自动化测试结果,尽早发现缺陷,判断缺陷是否是真实的系统缺陷,是进行下一步,不是就检查自动化测试脚本或测试环境。

    7:跟踪测试bug:将测试记录的bug记录到缺陷管理工具中以便定期跟踪。修复bug后还需要对此问题执行回归测试。

    常见的自动化测试框架介绍

    LoadRunner:LoadRunner是一种高规模适应性的自动负载工具,它能预测系统行为,优化性能。强调对整个企业应用架构进行测试,能提供特殊的环境。

    Selenium:Selenium是一个强大的开源web功能测试工具系列,支持多种语言开发语言,selenium测试自动运行在浏览器中。

    QTP:QTP是quicktest Professionnal的简称。使用QTP的目的是想用它来执行重复的自动化测试,主要用于回归测试和测试同一软件的新版本。

    Ranorex:Ranorex是一个Windows平台上的GUI自动化测试框架,可以测试多种类型的应用程序。

    Python unittest介绍

    unittest是Python的一个单元测试框架,非常适合做自动化测试。它包含的方法有:

    1、TestCase:所有测试用例的基类,它是软件测试中最基本的组成单元。

    2、TestSuite:多个测试用例的集合,TestSuite可以嵌套TestSuite。

    3、TestLoader:用来加载TestCase到TestSuite中。

    4、TextTestRunner:执行测试用例,其中的run(test)会执行TestCase/TestSuite中的run(result)方法。

    5、TextTestResult:将测试结果保存到TextTestResult实例中,包括运行了多少用例,成功与失败多少等信息。

    6、TestFixture:对一个测试用例环境的搭建与销毁。

    自动化测试实例

    给定两个数字,测试数字相加与相减是否符合预期。期待值:x+y=3,y-x=1

    设计测试用例:

    1、x=1,y=2 预期结果:pass

    2、x=2,y=3 预期结果:fail

    3、x=1,y=2 预期结果:pass

    4、x=1,y=3 预期结果:fail

    测试用例代码化:

    importunittestclassA(unittest.TestCase):deftest_1(self):

    u"""x+y=3""" #测试用例名

    x=1y=2self.assertEqual(x+y,3)print(" Atest_1")deftest_2(self):

    u"""x+y=5"""x=2y=3self.assertEqual(y+x,3)print(" Atest_2")deftest_3(self):

    u"""y-x=1"""x=1y=2self.assertEqual(y-x,1)print(" Atest_3")deftest_4(self):

    u"""y-x=2"""x=1y=3self.assertEqual(y-x,1)print(" Atest_4")deftearDown(self):pass

    if __name__ == '__main__':

    unittest.main()

    自动化测试脚本:

    importunittestimportHTMLTestRunnerimportaimporttime,osdeftestcaseuite():#用测试套件加载测试类,按加载顺序执行各个测试类

    testunit=unittest.TestSuite()

    testunit.addTest(unittest.makeSuite(a.A))#获取当前时间节点

    timestring=time.strftime("%Y-%m-%d_%H_%M_%S",time.localtime())#获取项目路径

    current_path=os.getcwd()

    result_path=current_path+'\selenium_result'

    #命名生成的HTML测试报告

    filename=result_path+'\result_'+timestring+'.html'

    print(filename)

    fp=open(filename,'wb')

    runner=HTMLTestRunner.HTMLTestRunner(

    stream=fp,

    title=u'selenium自动化测试学习',

    description=u'用例执行结果:')

    runner.run(testunit)

    fp.close()if __name__ == '__main__':print('开始执行测试用例')

    testcaseuite()print('测试用例执行完毕')

    运行完成截图:

    1782691-20191222012020121-2096409468.png

    测试报告:

    1782691-20191222011832434-709882175.png

    自动化测试结果与预期结果一致,自动化测试完成。

    展开全文
  • 实际上自动化测试就是自动化测试工具代替手工测试,即是模拟手工测试,从而利用所脚本执行测试用例,解决大量用例维护的问题。什么是自动化测试脚本?自动化测试项目也是有需要编码的部分。它并不是字面上的那样...

    什么是自动化测试?

    自动化测试,一般是指软件测试的自动化。自动化测试是把以人为驱动的测试转化为机器执行的一种过程。实际上自动化测试就是用自动化测试工具代替手工测试,即是模拟手工测试,从而利用所写脚本执行测试用例,解决大量用例维护的问题。

    什么是自动化测试脚本?

    自动化测试项目也是有需要编码的部分。它并不是字面上的那样完全取代手工测试,它需要编写测试脚本实现所设计的测试用例。

    编写脚本的同时也需要注意:检查测试数据的存在性、正确性以及对测试环境的依赖性考虑,若测试脚本环境比较复杂导致失败,查明测试脚本执行失败的原因等等。

    自动化测试现状

    软件测试的自动化,已经成为国内软件工程领域一个众所周知的课题;软件测试从业者都意识到软件测试这项工作走向标准化的一个必经之路就是要实现软件的自动化测试。

    目前国内的软件公司很多都还处于获取资本的原始积累阶段,整体行业没有将自动化测试重视起来。

    正确认识自动化测试

    1、自动化测试能大大降低手工测试工作,但不能完全取代手工测试。完全的自动化测试只是理论上的目标,实际上想要达到100%的自动化测试,不仅代价昂贵,操作上也几乎不可能实现。

    2、测试自动化的引入有一定的标准,要经过综合的评估,绝对不能理解成测试工具简单的录制与回放过程。

    3、自动化测试能提高测试效率,快速定位测试软件各版本中的功能与性能缺陷,但不会创造性的发现测试脚本里有没有设计的缺陷。

    4、自动化测试能提高效率,但对于周期短、时间紧迫的项目不宜采用自动化测试。

    自动化测试流程

    1:制定测试计划:明确测试对象、测试目的、测试的方法,确定无误后进行下一步;

    2:分析测试需求:根据测试计划和需求说明,分析测试需求,设计测试需求树,以便用例设计时能够覆盖所有的需求点。

    3:设计测试用例:通过分析需求,设计能够覆盖所有需求点的测试用例,形成专门的测试用例文档。

    4:搭建测试环境:测试环境的搭建,包括被测系统的部署、测试硬件的调用、测试工具的安装和设置、网络环境的布置等。

    5:编写测试脚本:根据自动化测试用例和问题的难易程度,采取适当的脚本开发方法编写测试脚本。

    6:分析测试结果、记录测试问题:及时分析自动化测试结果,尽早发现缺陷,判断缺陷是否是真实的系统缺陷,是进行下一步,不是就检查自动化测试脚本或测试环境。

    7:跟踪测试bug:将测试记录的bug记录到缺陷管理工具中以便定期跟踪。修复bug后还需要对此问题执行回归测试。

    常见的自动化测试框架介绍

    LoadRunner:LoadRunner是一种高规模适应性的自动负载工具,它能预测系统行为,优化性能。强调对整个企业应用架构进行测试,能提供特殊的环境。

    Selenium:Selenium是一个强大的开源web功能测试工具系列,支持多种语言开发语言,selenium测试自动运行在浏览器中。

    QTP:QTP是quicktest Professionnal的简称。使用QTP的目的是想用它来执行重复的自动化测试,主要用于回归测试和测试同一软件的新版本。

    Ranorex:Ranorex是一个Windows平台上的GUI自动化测试框架,可以测试多种类型的应用程序。

    Python unittest介绍

    unittest是Python的一个单元测试框架,非常适合做自动化测试。它包含的方法有:

    1、TestCase:所有测试用例的基类,它是软件测试中最基本的组成单元。

    2、TestSuite:多个测试用例的集合,TestSuite可以嵌套TestSuite。

    3、TestLoader:用来加载TestCase到TestSuite中。

    4、TextTestRunner:执行测试用例,其中的run(test)会执行TestCase/TestSuite中的run(result)方法。

    5、TextTestResult:将测试结果保存到TextTestResult实例中,包括运行了多少用例,成功与失败多少等信息。

    6、TestFixture:对一个测试用例环境的搭建与销毁。

    自动化测试实例

    给定两个数字,测试数字相加与相减是否符合预期。期待值:x+y=3,y-x=1

    设计测试用例:

    1、x=1,y=2 预期结果:pass

    2、x=2,y=3 预期结果:fail

    3、x=1,y=2 预期结果:pass

    4、x=1,y=3 预期结果:fail

    测试用例代码化:

    importunittestclassA(unittest.TestCase):deftest_1(self):

    u"""x+y=3""" #测试用例名

    x=1y=2self.assertEqual(x+y,3)print("\nAtest_1")deftest_2(self):

    u"""x+y=5"""x=2y=3self.assertEqual(y+x,3)print("\nAtest_2")deftest_3(self):

    u"""y-x=1"""x=1y=2self.assertEqual(y-x,1)print("\nAtest_3")deftest_4(self):

    u"""y-x=2"""x=1y=3self.assertEqual(y-x,1)print("\nAtest_4")deftearDown(self):pass

    if __name__ == '__main__':

    unittest.main()

    自动化测试脚本:

    importunittestimportHTMLTestRunnerimportaimporttime,osdeftestcaseuite():#用测试套件加载测试类,按加载顺序执行各个测试类

    testunit=unittest.TestSuite()

    testunit.addTest(unittest.makeSuite(a.A))#获取当前时间节点

    timestring=time.strftime("%Y-%m-%d_%H_%M_%S",time.localtime())#获取项目路径

    current_path=os.getcwd()

    result_path=current_path+'\\selenium_result'

    #命名生成的HTML测试报告

    filename=result_path+'\\result_'+timestring+'.html'

    print(filename)

    fp=open(filename,'wb')

    runner=HTMLTestRunner.HTMLTestRunner(

    stream=fp,

    title=u'selenium自动化测试学习',

    description=u'用例执行结果:')

    runner.run(testunit)

    fp.close()if __name__ == '__main__':print('开始执行测试用例')

    testcaseuite()print('测试用例执行完毕')

    运行完成截图:

    测试报告:

    自动化测试结果与预期结果一致,自动化测试完成。

    展开全文
  • 一般注意基础的问题,还有回答逻辑感,测试用例考虑全面一些,从功能接口安全性等方面有天理的叙述哈 自我介绍,询问以往项目中的问题,最近做的项目负责的模块 接口测试和性能测试需要关注的点? 怎么定位一个bug是...
  • 这里自定义目录标题简述单元测试框架/工具JUnitIDE是啥?TestNGMockito为什么要使用Mock?...项目的一般测试流程测试需求分析搭建测试环境编写测试计划编写测试用例集成测试(SIT)系统测试(ST)用户...
  • 软件测试经典面试题 (超实用)

    热门讨论 2012-02-16 13:48:08
    13、在RedHat中,从root用户切到userl用户,一般用什么命令? 30 14、Linux中,一般怎么隐藏文件? 30 15、如何将自己的本地磁盘(D)做成FTP供远端主机使用? 30 16、对RUP.CMM,CMMI,XP,PSP.TSP的认识? 30 17、DNS...
  • 测试培训教材

    2014-04-01 12:10:48
    把测试计划树中的“Cruises”包含的所有测试用例以及“Airline Preference”、“Number of Passengers”添加到测试集中: 9、测试过程监控 计划测试的运行 在“Mercury Tours 1.0.1”中新建一个测试集: ...
  • 但对于迭代较快的业务逻辑以及生存时间不长的活动页面之类的就别花时间写测试用例了,维护测试用例的时间大了去了,成本太高。 <h2>Node.js模块的测试 对于Node.js的模块,测试算是比较方便的&#...
  • 测试覆盖率

    2011-10-28 11:16:51
    覆盖策略陈述测试的一般目的,指导测试用例的设计。覆盖策略的陈述可以简单到只说明核实所有性能。  如果需求已经完全分类,则基于需求的覆盖策略可能足以生成测试完全程度的可计量评测。例如,如果已经确定了所有...
  • ③、一个好的测试用例是在于它能发现至今未发现的错误; ④、一个成功的测试是发现了至今未发现的错误的测试。 这种观点可以提醒人们测试要以查找错误为中心,而不是为了演示软件的正确功能。但是仅凭字面意思理解...
  • 软件工程教程

    2012-07-06 23:10:29
    例图中可以包含若干个用例用例表达了系统的功能 用例只描述参与者和系统在交互过程中做些什么,并不描述怎么做。 例图 关联关系 例图 泛化关系 例图 泛化关系 例图 例图 例图 用例用于什么...
  • 为了反映D中各数据元素之间的前后件关系,一般用二元组来表示。 例如,如果把一年四季看作一个数据结构,则可表示成:B =(D,R) D ={春季,夏季,秋季,冬季} R ={(春季,夏季),(夏季,秋季),(秋季,冬季)} 3. 存储结构 ...
  • Code Compl 代码大全

    2011-05-26 12:09:22
     采用容易手工检查的测试用例  22.4 典型错误  哪些类包含最多的错误?  错误的分类  不完善的构造过程引发错误所占的比例  你期望能发现多少错误  测试本身的错误  22.5 测试支持工具  为测试各个类构造...
  • 045《Restlet Client》优秀的Api测试工具 044《谷歌访问助手》访问Chrome商店 Gmail 谷歌搜索 043《Dream Afar New Tab》探索世界的新方式 042 在Edge中安装Chrome扩展程序 041《Copy All Urls》优雅地保存-...
  • 在一次测试中,并没有记得做了什么操作,发现HONET系统的主机复位了,之后,系统又工作正常了。由于没有打开后台的跟踪窗口,当时查了半天没有眉目。过了半天,现象又出现了,而且这次是主机在反复复位,系统根本...
  • 英特尔面试专项准备

    2020-12-09 13:46:46
    </li><li>特性用例测试</li><li>虚拟化原理与实现</li><li>CPU虚拟化</li><li>内存虚拟化</li><li>内存复用</li><li>C语言安全规范</li><li>Kubernetes多租户管理</li><li>OCI特性开发</li><li>容器网络调研</li><li...
  • 获取足够多的问题领域的知识,需求抽取的方法一般有问卷法、面谈法、数据采集法、用例法、情景实例法以及基于目标的方法等;还有知识工程方法,例如,场记分析法、卡片分类法、分类表格技术和基于模型的知识获取等 ...
  • 但是文档中没有实战用例,没有告诉我们哪些可行或者哪些不可行,什么情况下可行或者什么情况下不可行,为什么可行或者为什么不可行,它只是“公事公办”为你呈上厚厚的一摞文字,告诉你情况就是这样,你自己看着办吧...
  • asp.net知识库

    2015-06-18 08:45:45
    忽略大小Replace效率瓶颈IndexOf 随机排列算法 理解C#中的委托[翻译] 利用委托机制处理.NET中的异常 与正则表达式相关的几个小工具 你真的了解.NET中的String吗? .NET中的方法及其调用(一) 如何判断ArrayList,...
  • 第二行代码得到class 为container的div元素,第三行代码得到标签下面id为msg的div元素(不过最好别这样,因为jQuery需要遍历所有的div元素,对于带id的元素,直接$("#id"))。第四行代码得到context为上下文的table...
  • 具体参考文章:浅谈自动化测试工具python-uiautomator2 Install daemons to a device (Optional) 电脑连接上一个手机或多个手机, 确保adb已经添加到环境变量中,执行下面的命令会自动安装本库所需要的设备端程序:...
  • 深入理解Android:卷I--详细书签版

    热门讨论 2012-12-12 15:51:21
     本书是在分析Android源码的基础上展开的,而源码文件所在的路径一般都很长,例如,文件AndroidRuntime.cpp的真实路径就是framework/base/core/jni/AndroidRuntime.cpp。为了书 方便起见,我们在各章节开头把该...

空空如也

空空如也

1 2
收藏数 29
精华内容 11
关键字:

一般写测试用例用什么工具