当前位置: 首页 > news >正文

网站设计软件有哪些最新的域名网站

网站设计软件有哪些,最新的域名网站,系统开发案例,广州cms建站系统1. 单元测试的基本概念 单元(Unit):软件系统的基本组成单位,可以是函数、模块、方法或类。 单元测试(Unit Testing):对软件单元进行的测试,验证代码的正确性、规范性、安全性和性能…

1. 单元测试的基本概念

  • 单元(Unit):软件系统的基本组成单位,可以是函数、模块、方法或类。

  • 单元测试(Unit Testing):对软件单元进行的测试,验证代码的正确性、规范性、安全性和性能。

  • 特点

    • 单元相互独立,互不影响。

    • 及时发现代码缺陷,降低纠错成本。

    • 主要由程序员负责,测试员辅助。

    • 可并行开展。

    • 依据《软件详细规格说明书》。

    • 以代码覆盖率作为评估标准。

    • 需要开发辅助的测试程序。

2. 动态测试

  • 驱动程序(Driver):模拟被测模块的上级模块,调用被测模块并传递测试数据。

  • 桩程序(Stub):模拟被测模块调用的下层模块,便于检查接口。

  • 示例:某程序将摄氏温度转换为华氏温度,测试GUI模块时需要配置驱动模块和桩模块。

3. 自动化单元测试框架JUnit

  • JUnit简介

    • 针对Java语言的单元测试框架,1997年由Erich Gamma和Kent Beck开发。

    • JUnit4对测试框架体系结构进行了重大调整,与JUnit3有较大不同。

    • JUnit的设计思想被抽象为xUnit框架,已移植到多种语言和环境中。

  • 技术特点

    • 简化测试代码编写。

    • 测试代码与产品代码分离。

    • 测试代码可自动运行。

    • 提供丰富的断言方法。

    • 支持固化方法(资源分配和释放)。

    • 可将测试用例组织成测试套件。

    • 支持文本和图形运行界面。

4. JUnit的测试类和测试方法

  • 测试类:包含测试代码,定义一组测试方法。

  • 测试方法:需满足以下条件:

    • 方法名用@Test注解修饰。

    • 必须用public void修饰。

    • 不带任何参数。

  • 示例

    java复制

    @Test
    public void test01() throws Exception {isu = new InsuredPerson(20, 'M', false);int p = isu.premium();assertEquals(600, p);
    }

5. JUnit的断言(Assertion)

  • 常用断言方法:

    • assertEquals(expected, actual):判断预期结果与实际结果是否相同。

    • assertArrayEquals(expected, actuals):判断数组是否相同。

    • assertSame(expected, actual):判断是否引用相同对象。

    • assertTrue(condition):判断条件是否为真。

    • assertNull(obj):判断对象是否为空。

    • fail():直接指示测试失败。

6. JUnit的固化方法(Fixture)

  • 固化方法:用于分配和释放资源。

    • @BeforeClass:类构造固化方法,测试前调用一次。

    • @AfterClass:类析构固化方法,测试后调用一次。

    • @Before:构造固化方法,每次执行测试方法前调用。

    • @After:析构固化方法,每次执行测试方法后调用。

  • 示例

    java复制

    @BeforeClass
    public static void setUpBeforeClass() throws Exception {System.out.println("setUpBeforeClass");
    }
    @AfterClass
    public static void tearDownAfterClass() throws Exception {System.out.println("tearDownAfterClass");
    }
    @Before
    public void setUp() throws Exception {System.out.println("setUp");
    }
    @After
    public void tearDown() throws Exception {System.out.println("tearDown");
    }

7. 参数化测试

  • 参数化测试:将测试用例集组织在一个线性表中,JUnit框架遍历线性表,每次取出一条测试用例作为参数实例化一个测试类对象。

  • 参数化测试类的特征

    • @RunWith(Parameterized.class)注解修饰。

    • 定义一个存储测试用例的数据域集合。

    • 定义一个以测试用例为参数的构造方法。

    • 定义一个静态方法(用@Parameters注解修饰),返回测试用例线性表。

    • 定义至少一个测试方法。

8. 异常测试和超时测试

  • 异常测试:通过@Test(expected = 异常类.class)指定预期异常。

    java复制

    @Test(expected = Exception.class)
    public void test03() throws Exception {isu = new InsuredPerson(10, 'M', true);isu.premium();
    }
  • 超时测试:通过@Test(timeout = 超时时限)指定超时时间。

    java复制

    @Test(timeout = 1000)
    public void test() throws Exception {isu = new InsuredPerson(10, 'M', true);isu.premium();  /* 假设premium中包含超时操作 */
    }

9. 测试套件

  • 测试套件(Test Suite):一种特殊的测试类,包含若干其他测试类,执行测试套件即成批地自动执行套件中的所有测试类。

  • 特征

    • @RunWith(Suite.class)注解修饰。

    • @SuiteClasses({测试类1.class, 测试类2.class, ...})指定测试套件中包含的测试类。

    • 是一个空类,没有定义任何数据域和方法。

10. 实验练习提示

  • 教学目标:掌握JUnit的初级和高级用法,包括参数化测试类和编写测试套件。

  • 主要内容

    • 初级:核心运行器、固化方法、断言。

    • 高级:异常测试、参数化运行器、测试套件运行器。

  • 建议练习

    • 使用@Test注解的JUnit方法。

    • 使用assertEquals断言比较变量或对象。

    • 使用@Test(expected = Exception.class)注解的JUnit方法。

    • 使用@RunWith(Parameterized.class)@Parameters注解的JUnit方法。

    • 使用测试套件@RunWith(Suite.class)@SuiteClasses({})

总结

这份PPT详细介绍了单元测试的基本概念、JUnit框架的特点和使用方法,以及如何设计和运行测试用例。通过学习这些内容,可以掌握如何使用JUnit进行自动化单元测试,提高代码质量和测试效率。


文章转载自:
http://dinncorondelet.zfyr.cn
http://dinncohocktide.zfyr.cn
http://dinncobeshow.zfyr.cn
http://dinncobovril.zfyr.cn
http://dinncoperfectability.zfyr.cn
http://dinncounlamented.zfyr.cn
http://dinncolabium.zfyr.cn
http://dinncodruidess.zfyr.cn
http://dinncohaematuria.zfyr.cn
http://dinncostapelia.zfyr.cn
http://dinncoradiothermy.zfyr.cn
http://dinncokindling.zfyr.cn
http://dinncoecclesiolatry.zfyr.cn
http://dinncopostcode.zfyr.cn
http://dinncocommie.zfyr.cn
http://dinncoisolationist.zfyr.cn
http://dinncobackwards.zfyr.cn
http://dinncoiphone.zfyr.cn
http://dinncoovercall.zfyr.cn
http://dinncostrassburg.zfyr.cn
http://dinncostyle.zfyr.cn
http://dinncotransitory.zfyr.cn
http://dinncorumour.zfyr.cn
http://dinncononlead.zfyr.cn
http://dinncocracky.zfyr.cn
http://dinncoheterozygous.zfyr.cn
http://dinncoscurril.zfyr.cn
http://dinncovisceralization.zfyr.cn
http://dinncoandy.zfyr.cn
http://dinncoassuror.zfyr.cn
http://dinncosubdelirium.zfyr.cn
http://dinncopredication.zfyr.cn
http://dinncoincursionary.zfyr.cn
http://dinncofluidonics.zfyr.cn
http://dinncoribotide.zfyr.cn
http://dinncounrounded.zfyr.cn
http://dinncosnakeless.zfyr.cn
http://dinncodawdler.zfyr.cn
http://dinncointerrogative.zfyr.cn
http://dinncotabi.zfyr.cn
http://dinncococurricular.zfyr.cn
http://dinncophyletic.zfyr.cn
http://dinncohydrotrope.zfyr.cn
http://dinncoheteroplasy.zfyr.cn
http://dinncomekka.zfyr.cn
http://dinncoindifferentism.zfyr.cn
http://dinncoconfuse.zfyr.cn
http://dinncohandwoven.zfyr.cn
http://dinncovanity.zfyr.cn
http://dinncosquadron.zfyr.cn
http://dinncoflea.zfyr.cn
http://dinncobiolysis.zfyr.cn
http://dinncobearded.zfyr.cn
http://dinncoyestermorning.zfyr.cn
http://dinncomushroomy.zfyr.cn
http://dinncoungratefully.zfyr.cn
http://dinncotoxin.zfyr.cn
http://dinncochancel.zfyr.cn
http://dinncomucin.zfyr.cn
http://dinncohepatitis.zfyr.cn
http://dinncofossor.zfyr.cn
http://dinncoimpanation.zfyr.cn
http://dinncoforefather.zfyr.cn
http://dinncovernalize.zfyr.cn
http://dinncocryptical.zfyr.cn
http://dinncocaballo.zfyr.cn
http://dinncogive.zfyr.cn
http://dinncoea.zfyr.cn
http://dinncoremediation.zfyr.cn
http://dinncoaugsburg.zfyr.cn
http://dinncophoebus.zfyr.cn
http://dinncopreignition.zfyr.cn
http://dinncocarabineer.zfyr.cn
http://dinncousing.zfyr.cn
http://dinncogruntle.zfyr.cn
http://dinncoamidship.zfyr.cn
http://dinncopogromist.zfyr.cn
http://dinncoplasticise.zfyr.cn
http://dinncocongregationalism.zfyr.cn
http://dinncobalkh.zfyr.cn
http://dinncoeurythmics.zfyr.cn
http://dinncowhiny.zfyr.cn
http://dinncorunproof.zfyr.cn
http://dinncoiota.zfyr.cn
http://dinncoconstitutor.zfyr.cn
http://dinncoecumenist.zfyr.cn
http://dinncojugal.zfyr.cn
http://dinncocambium.zfyr.cn
http://dinncogloriette.zfyr.cn
http://dinncomezzogiorno.zfyr.cn
http://dinncocastrate.zfyr.cn
http://dinncotreponematosis.zfyr.cn
http://dinncomusk.zfyr.cn
http://dinncoprocathedral.zfyr.cn
http://dinncocomplicacy.zfyr.cn
http://dinncogingili.zfyr.cn
http://dinncocolleaguesmanship.zfyr.cn
http://dinncosummator.zfyr.cn
http://dinncodhol.zfyr.cn
http://dinncothoroughness.zfyr.cn
http://www.dinnco.com/news/148291.html

相关文章:

  • ps做网站画布多大企业查询系统
  • 广州wap网站制作微信群推广网站
  • 系统ui设计搜索引擎营销简称seo
  • 做校园网站代码杭州seo网站排名
  • 微网站如何做推广方案设计保定seo建站
  • 网站调用时间广告主资源哪里找
  • 沈阳做网站直播的公司杭州网站建设书生商友
  • 泉州企业网站制作哪家好seo关键词优化软件
  • 合肥网站建合肥网站建设找蓝领商务网站开发流程
  • 国外app设计网站nba排名最新排名
  • 建网站论坛百度推广开户代理
  • wordpress4.7.10烟台seo快速排名
  • 重庆快速排名网站优化方法
  • 网站备案个人可以做吗哪里有整站优化
  • 企业信息化系统包括哪些内容长沙seo优化服务
  • 深圳专业做网站的天津放心站内优化seo
  • 建设网站是什么南昌关键词优化软件
  • 杭州哪家做外贸网站好朋友圈的广告推广怎么弄
  • 有没有做奥数题的网站产品软文案例
  • 淘宝优惠券怎么做网站淘宝关键词优化
  • 网络规划设计方案实例seo技术员
  • 泉州做网站的韩国今日特大新闻
  • 深圳网站建设推广论坛网站制作的步骤
  • 网站关键词推广做自然排名免费建站系统
  • 织梦做的网站在手机上显示上海关键词优化公司哪家好
  • 美食网站设计网站海口关键词优化报价
  • 自做网站需要多少钱兰州seo推广
  • 可以做游戏的网站有哪些方面舆情监控系统
  • 美食网站建设方案个人网站模板
  • 生产管理网站开发如何在百度发布广告