武汉软件测试吧 关注:138贴子:451
  • 13回复贴,共1

周五福利1——Selenium入门

只看楼主收藏回复

欢迎阅读Selenium入门讲义,本讲义将会重点介绍Selenium的入门知识以及Selenium的前置知识。


1楼2018-08-03 16:56回复
    软件测试的发展
    G.J.Myers在其经典的著作《软件测试艺术》(The Art of Software Testing)一书中,给出了测试的定义:“程序测试是为了发现错误而执行的过程。”这个概念产生于30年前,对软件测试的认识还非常有局限性,当然也是因为受瀑布开发模型的影响,认为软件测试是编程之后的一个阶段。只有等待代码开发出来以后,通过执行程序,像用户那样操作软件去发现问题。


    2楼2018-08-03 16:56
    回复
      上述也就是动态测试。随后延伸到静态测试,也就是在对于写代码之前的文档、以及编码过程中的代码进行代码扫描、评审等。
      当前,软件测试贯穿到整个软件开发生命周期的全过程中,不再停留在编程之后的某个阶段,尤其是敏捷开发开始广泛的应用于互联网行业以后,敏捷测试就把软件测试解释为对软件产品质量的持续评估。在敏捷方法中,持续测试被提倡。当前的持续测试的实施,主要依托于持续集成。


      3楼2018-08-03 16:57
      回复
        持续集成和持续测试的产生和发展,对自动化测试产生了比较高的要求。此外随着大数据和机器学习的发展,对自动化测试的需求越来越迫切。
        简单的描述一下持续集成,Continuous Integration,简称CI。是一种软件工程实践:项目需要经常性的集成,进行代码编译,版本构建,自动化的部署以及部署后的自动化测试。也是云开发测试模式的一种。持续集成构成了持续交付的基础。


        4楼2018-08-03 16:57
        回复
          自动化测试:以人为驱动的测试行为转化为机器执行的一种过程


          5楼2018-08-03 16:57
          回复
            软件测试的维度
            从软件测试的过程看:单元测试、集成测试、确认测试、系统测试、验收测试
            从软件测试的方法看:白盒测试、黑盒测试、灰盒测试
            从软件测试的测试点看:功能测试、性能测试、兼容性测试、安全测试、探索性测试
            从软件测试的技术程度看:手工测试、自动化测试、测试开发


            6楼2018-08-03 16:57
            回复
              自动化测试应用的场景:
              功能测试的自动化:测试界面显示、测试业务逻辑、测试数据导入导出、测试接口功能
              性能测试的自动化:测试压力和负载、测试接口的性能等


              7楼2018-08-03 16:57
              回复
                什么样的项目适合自动化测试?
                任务测试明确,不会频繁变动;
                每日构建后的测试验证;
                比较频繁的回归测试;
                软件系统界面稳定,变动少;
                需要在多平台上运行的相同测试案例、组合遍历型的测试、大量的重复任务;
                软件维护周期长;
                项目进度压力不太大;
                被测软件系统开发比较规范,能够保证系统的可测试性;
                具备大量的自动化测试平台;
                测试人员具备较强的编程能力。


                8楼2018-08-03 16:58
                回复
                  什么样的项目适合自动化测试?
                  任务测试明确,不会频繁变动;
                  每日构建后的测试验证;
                  比较频繁的回归测试;
                  软件系统界面稳定,变动少;
                  需要在多平台上运行的相同测试案例、组合遍历型的测试、大量的重复任务;
                  软件维护周期长;
                  项目进度压力不太大;
                  被测软件系统开发比较规范,能够保证系统的可测试性;
                  具备大量的自动化测试平台;
                  测试人员具备较强的编程能力。


                  9楼2018-08-03 16:58
                  回复
                    自动化测试工具介绍:
                    HP UFT (QTP)
                    Selenium
                    HP LoadRunner
                    Robot Framework
                    Watir (web application test in ruby)
                    SoapUI
                    MonkeyRunner


                    10楼2018-08-03 16:58
                    回复
                      Selenium经历了两个版本,Selenium1.0 和Selenium2.0,Selenium 也不是简单一个工具,而是由几个工具组成,每个工具都有其特点和应用场景。
                      Selenium是在2004年由一个叫Jason Huggins的聪明的年轻人开发的,当时身处ThoughtWorks的他,为了不想让自己的时间浪费在无聊的重复性工作中,所以开发一个JS的类库来驱动浏览器页面的行为;这个js类库就是selenium core,同时也是seleniumRC、Selenium IDE的核心组件。这就是Selenium1.0的产生史。
                      在2006年,在google的一位有胆识的年轻人Simon Stewart发起了一个叫WebDriver的项目;因为长期以来google一直是selenium的重度用户,但却总是被限制在有限的操控范围内,所以Simon希望能通过浏览器、操作系统的底层方法等一些手段来直接操作浏览器;这样就避免了在JavaScript的沙箱环境里存在的那些限制了,webdriver项目就此诞生!
                      在2008年,Selenium和webdriver结合了,从此永结良缘,福泽我们广大的测试工作者。这期间谁追的谁都不重要了,重要的是他们合并的原因正如webdriver的作者所说:“selenium 补充了 webdriver 的不足,webdriver 也补充了 selenium 的不足,它们合体后能给用户提供一个更好的自动化测试框架”。


                      13楼2018-08-03 16:59
                      回复
                        所以管它呢,现在大家有一个比较好用的 selenium 就行了!
                        Selenium 1 和 WebDriver 合并成一款性能更佳的产品 Selenium 2(或 Selenium WebDriver),该款产品发行于 2011 年。Selenium 2 具有来自 WebDriver 的清晰面向对象 API,并能以最佳的方式与浏览器进行交互。Selenium 2 不使用 JavaScript 沙盒,它支持多种浏览器和多语言绑定。


                        14楼2018-08-03 16:59
                        回复
                          为什么选择 Selenium
                          Selenium特点:
                          开源,免费;
                          多浏览器支持:Firefox、Chrome、IE、Opera、Safari;
                          多平台支持:Linux 、windows、Mac;
                          多语言支持:Java、Python、ruby、PHP、C#、JavaScript;
                          对web 页面有良好的支持;
                          简单(API 简单)、灵活(用开发语言驱动);
                          支持分布式测试用例执行。


                          15楼2018-08-03 16:59
                          回复
                            Selenium的家谱
                            Selenium到目前为止已经经历了两个版本:Selenium 1.0和Selenium2.0.
                            Selenium1.0:包括 Selenium IDE,Selenium Grid和Selenium RC(Selenium Remote Control)Selenium IDE 是嵌入到Firefox 浏览器中的一个插件,实现简单的浏览器操作的录制与回放功能。


                            16楼2018-08-03 17:00
                            回复