java自动化-juint框架简述

  本人使用的是java的juint框架来组织的自动化测试,故我这边需要简单介绍一下juint框架
  首先,建议自行百度一下juint框架,先有一个大概的了解
  所谓的接口自动化测试,会对多个接口中每一个接口发送各式各样的请求,其主要的思维是下面的方式

  

  可以想到,我们所要模拟的测试,一般的是一套代码,部署在本地或者测试服务器上,发送请求到服务器,以上图所示的各种方式依次请求各个接口,然后再对请求后返回的数值或者其他的进行校验,达到预期即可认为本次测试通过
  那么主流的接口测试的java框架(请原谅笔者技术水平,暂时只会java)就是juint和testng了,testng是juint的升级版,他们有啥好处呢?本文大致说一下juint框架
  一般的java代码是啥样子呢?有一个mian函数来进行请求,那么上述代码的话需要3个abc3个包,在a这个文件夹之下还要有3个class来分别作a的参数组1,2,3这三种请求,在每一个请求中如果都使用相同的发送方式的话,那么每一个方法先要声明一个map,再把不同的参数组传入该map中,在进行请求并接受数据,然后再进行断言校验
  juint框架的特点是存在一些特殊的标识,如@[email protected]@Before,下面将大概介绍一下~,先在ideal中的原先的shiyan的class中写下如下代码

package zlr;

import org.junit.*;

public class shiyan {    int x=0;    static int y=0;    @BeforeClass    public static void setup() throws Exception    {        y++;    }    @Before    public void setup1() throws Exception    {        x=x+1;    }    @After    public void Teardown() throws Exception    {        Assert.assertEquals(x,2);    }    @AfterClass    public static void setup2() throws Exception    {        y++;    }    @Test    public void abc1() throws Exception    {        x++;        System.out.println(x);        System.out.println(y);    }    @Test    public void abc2() throws Exception    {        x++;        System.out.println(x);        System.out.println(y);    }}其中可以看到,before,after,test这几种注释,juint框架常用的注释除了这3种还有2种,BeforeClass和AfterClass,大概的执行流程图如下

  juint框架的话没有main函数,可以包含多个test注释的代码,一般的是有一定的初始化在beforeclass中,然后调用before代码,再调用第一个test代码,再调用after代码,然后又是下一次迭代,一次before,下一个test然后又是after代码,,,再各个test调用结束之后再调用afterclass代码来最后完结,其他的接口可以放在不同的class中来做,比如a.class,b.class等等

  所以在这里对a接口来说,完全可以把参数1,2,3放在不同的test中,然后再把一些初始化工作放在before和beforeclass中,数组整理与一些事后操作放在after和afterclass中这样便可以运行了

  另一方面,在上文中可以看到,代码中第一个test把x加一了,但是运行起来,从效果来看的话,很不错,x是相互独立的这也是与for循环和main函数的最大区别~

  ok,本文的目的就是科普juint框架,下一篇,我会讲如果自动运行juint框架的代码

				
时间: 2024-10-29 18:25:46

java自动化-juint框架简述的相关文章

java juint框架的windows自动化-自动运行juint程序简述

在京东混了一个月,基本有点稳定了,觉得也有所余力了现在,继续写博客吧,不过以后更新也许不是那么频繁了 本人使用的是junit框架,对开发是一个单元测试的java框架,但是对测试而言是java的基石之一,与testng差不多平分秋色(好吧,其实是稍微差一点)在上文http://www.cnblogs.com/xuezhezlr/p/7773614.html简单介绍了junit框架后,这里作一个简单的比较 junit框架与传统main函数的主要区别:1junit框架其实质包含多个main函数,相互间

Java Junit测试框架

Java    Junit测试框架 1.相关概念 ? JUnit:是一个开发源代码的Java测试框架,用于编写和运行可重复的测试.它是用于单元测试框架体系xUnit的一个实例(用于java语言).主要用于白盒测试,回归测试. ? 白盒测试:把测试对象看作一个打开的盒子,程序内部的逻辑结构和其他信息对测试人 员是公开的. ? 回归测试:软件或环境的修复或更正后的再测试,自动测试工具对这类测试尤其有用. ? 单元测试:最小粒度的测试,以测试某个功能或代码块.一般由程序员来做,因为它需要知道内部程序设

【Selenium2+Java自动化(3)】-操作浏览的基本方法

前言 前面已经把环境搭建好了,这从这篇开始,正式学习selenium的webdriver框架.我们平常说的 selenium自动化,其实它并不是类似于QTP之类的有GUI界面的可视化工具,我们要学的是webdriver框架的API. 本篇主要讲如何用Java调用webdriver框架的API,对浏览器做一些常规的操作,如打开.前进.后退.刷新.设置窗口大小.截屏.退出等操作. 1.打开网站见上一章节. 2.获取当前页面URL 3.获取当前页面源代码 4.刷新当前页面 5.设置浏览器窗口大小 6.

接口测试自动化生成框架

接口测试这个词语,相信大家都不陌生了吧.目前我个人的理解,接口测试应该属于白盒测试的范畴,也是很多测试工程师很想从事和向往的一个测试手段.大家都觉得白盒测试深不可测,但实际上是怎么样的呢. 接口测试的实施优先级 对于Web应用来说,接口测试就是对某一个接口进行测试代码的编写和执行.一般情况下,实施接口测试的优先级是:对暴露在外面的接口(该接口会给第三方调用)进行接口测试:内部的核心功能接口也会做接口测试:内部非核心功能接口的接口测试(很多时候就是单元测试).当然这个实施的具体细节,还需要根据项目

Java NIO通信框架在电信领域的实践

Java NIO通信框架在电信领域的实践 此文配图有错,华为电信软件V1版逻辑架构图与华为电信软件V2 MVC版逻辑架构图两张配图是同一张啊 另:我觉得作者在本文中遇到由于同步io引起的历史遗留问题更多的是架构的问题,在作架构时就需要考虑到同步io引起的阻塞问题,我觉得比较好的解决方案是使用排队的方式来下发请求,而不是每次下发请求都启一个线程,这样如果对方还是响应慢的话即使是用nio也是解决不了问题的.

java计划任务调度框架quartz结合spring实现调度的配置实例代码分享

点击链接加入群[JavaEE(SSH+IntelliJIDE+Maven)]:http://jq.qq.com/?_wv=1027&k=L2rbHv 一:quartz简介 OpenSymphony 的Quartz提供了一个比较完美的任务调度解决方案. Quartz 是个开源的作业调度框架,定时调度器,为在 Java 应用程序中进行作业调度提供了简单却强大的机制. Quartz中有两个基本概念:作业和触发器.作业是能够调度的可执行任务,触发器提供了对作业的调度 二:quartz spring配置详

java数据库访问框架

数据库设计三大范式 http://www.cnblogs.com/linjiqin/archive/2012/04/01/2428695.html 数据库范式——通俗易懂[转] http://blog.sina.com.cn/s/blog_46d817650100yj2i.html浅谈SQL SERVER中事务的ACID http://www.cnblogs.com/CareySon/archive/2012/01/29/2331088.htmlJTA 深度历险 - 原理与实现 http://w

5个强大的Java分布式缓存框架推荐

在开发中大型Java软件项目时,很多Java架构师都会遇到数据库读写瓶颈,如果你在系统架构时并没有将缓存策略考虑进去,或者并没有选择更优的缓存策略,那么到时候重构起来将会是一个噩梦.本文主要是分享了5个常用的Java分布式缓存框架,这些缓存框架支持多台服务器的缓存读写功能,可以让你的缓存系统更容易扩展. 1.Ehcache – Java分布式缓存框架 Ehcache是一个Java实现的开源分布式缓存框架,EhCache 可以有效地减轻数据库的负载,可以让数据保存在不同服务器的内存中,在需要数据的

java并行调度框架封装及示例

参考资料:  阿里巴巴开源项目 CobarClient  源码实现. 分享作者:闫建忠 分享时间:2014年5月7日 --------------------------------------------------------------------------------------- 并行调度封装类设计: BXexample.java package org.hdht.business.ordermanager.quartzjob; import java.util.ArrayList;