三、测试用例-写测试用例时怎么入手

    刚开始工作的朋友,会和我一样有不少的困惑!用例该怎么写?重点在哪?项目急来不及写用例怎么办?下面分享自己的思路,欢迎探讨。。

问:拿到技术文档该如何下手,如何建立测试用例树。

  • 通读文档,明确产品的核心点(核心需求是什?和竞品比优势体现在哪?盈利的点在哪?)。
  • 要有测试计划/测试大纲;先抓产品的主干,按模块或界面区分;后面再补齐各主要模块的测试项。
  • 产品的需求/功能,分解输出测试项时,既要考虑程序逻辑,同时要有业务场景的考量。
  • 功能用例和性能用例、自动化的。最好区分开来方便管理。
  • 程序中的共享模块(数据共享等)写用例时需要标注出来做统一规划。
  • 程序中的复用模块,标注出来做统一规划。(代码复用,比如各界面的报表,很多都是一样的代码)
  • 业务流程标注出来做统一规划。(产品有多少重要业务是由产品的核心需求决定的)

问:好的测试用例是怎么样的?

  • 覆盖率----核心需求全部覆盖;功能点基本要包含完;对业务产生影响的场景尽可能多的考虑到。(无法量化,看项目实际需要。)
  • 易执行----一个测试点一条用例;用例的执行步骤,预期结果明确。
  • 可读性----用词规范,字体版面一致,清晰确切;保证他人能容易阅读,使用;(公司的用例,需要评审,其他测试交叉测试使用)
  • 复用性----复用性高;复用模块只需稍作修改即能使用;利用率高,回归测试时,需求改动不大时用例稍作修改即能使用。
  • 自动化----用例书写一开始就考虑,在需要进行自动化测试时能很快的转变(自动化进行的少,摸着的石头过河。。。。。)

问:需求/功能分解,写测试用例的方法有那些?

  • 输入/数据---等价类划分法
  • 输入/数据---边界值选取法
  • 条件和结果--因果图法
  • 条件和结果--判定表法
  • 场景--------场景法
  • 功能随数据--状态迁移法
  • 数据很多----正交实验法

注意:

下一篇举例简单介绍上面7种设计测试用例的方法。

时间: 2024-10-12 18:00:48

三、测试用例-写测试用例时怎么入手的相关文章

用 yaml 写测试用例

采用 excel 的方式写测试用例,格式比较死板,比较容易出错,采用 yaml / yml 格式来写用例. 首先安装 pyyaml:pip install pyyaml 建立一个 login.yaml 文件(或login.yml,这两种后缀是一样的),内容如下,可见内容中的key会变颜色,如果没有变颜色,冒号后面加个空格. username: joseph passwd: 123456 cpasswd: 123456 name: joseph 建立 a.py 文件读取 login.yaml 1

经常有很多人问:不写测试用例,能进行测试执行吗?

最近经常有人咨询: 不写测试用例,能进行测试执行吗? 答:可以 能保证覆盖全面吗? 答:看经验 举个例子: 要去商场购物,不写购物清单可以吗? 答:可以 能保证东西都买齐?不漏吗? 答:只能看记忆力了 还有疑问,好好看如上举例: 建议: 测试最好写测试用例,如果没时间:写checklist

今天和组内一起写代码时碰到了一个关于命名冲突的问题,最后用js命名空间的方法解决的。

//第一步,首先创建一个全局变量,可以放在自己的js方法库中方便以后用,这个就是用来注册命名空间的方法. ns = function(namespace){ var arr = namespace.split('.');  //将传入的字符串如"com.test.lzn"以'.'隔开做成一个数组 var strNamespace = ""; //这个是为了保存每一步循环进去的包名 for(var i=0;i<arr.length;i++) { if(i!=0)

html基础,写代码时的总结等---ShinePans

index.html: <html> <meta http-equiv="content-type" content="text/html;charset=UTF-8"/> <head> <body> <center> <!--空格  --> <!--img src="与html文件位置相同或者本地url或者网络url" width="xxpx为边框宽度&qu

input标签写CSS时需要注意的几点(先收藏)

(从已经死了一次又一次终于挂掉的百度空间人工抢救出来的,发表日期2014-05-05) 飞鱼的声纳顶部的搜索框让我头疼了很长时间,原因是总不能获得跨浏览器的统一样式.主要的问题有这么两个:一是input标签的高度不能统一,Firefox和IE中的高度始终不能一致:二是在IE浏览器中属性为text的input标签中的输入文字不像标准浏览器中的那样垂直居中显示,而是靠输入框的左上角显示. 为了彻底解决搜索框的这些问题,我以GreenGaint主题搜索框的样式为准,重写了一遍代码并且以像素为单位测量了

STM32用JLINK 烧写程序时出现NO Cortex-m device found in JTAG chain现象和解决方案

现象 CPU: STM32107VC 用JLINK 烧写程序时出现NO Cortex-m device found in JTAG chain 如图无法查找到硬件就是CPU 提示1:NO Cortex-M device found inJTAG chain.please check the JTAG cable and the connected devices     提示2:error:flash download failed-target DLL has been cancelled 原

使用 Java 程序写文件时,记得要 flush()

使用 Java 程序往磁盘写文件时碰到了这样的问题:文件写不全. 假如内容(StringBuffer/StringBuilder)有 100W 个字符,但是通过 Java 程序写到文件里的却不到 100W ,部分字符不见了. 代码大致是这样的: 1 private void writeToDisk() throws Exception { 2 File file = new File("FILE_PATH"); 3 OutputStreamWriter osw = null; 4 os

写脚本时整数比较与字符串的比较

写脚本时整数比较与字符串的比较: 整数比较-eq 等于,如:if [ "$a" -eq "$b" ]-ne 不等于,如:if [ "$a" -ne "$b" ]-gt 大于,如:if [ "$a" -gt "$b" ]-ge 大于等于,如:if [ "$a" -ge "$b" ]-lt 小于,如:if [ "$a" -lt &q

使用系统的某些block api(如UIView的block版本写动画时),是否也考虑循环引用问题?

系统的某些block api中,UIView的block版本写动画时不需要考虑,但也有一些api 需要考虑 以下这些使用方式不会引起循环引用的问题 [UIView animateWithDuration:duration animations:^ { [self.superview layoutIfNeeded]; }]; [[NSOperationQueue mainQueue] addOperationWithBlock:^ { self.someProperty = xyz; }]; [[