UML-Based Modeling of Robustness Testing
一、基本信息
标题:UML-Based Modeling of Robustness Testing
时间:2014
出版源:IEEE会议论文
领域分类:稳健性测试;UML测试Prole;UML Prole扩展;案例分析
二、研究背景
问题定义:基于UML的鲁棒性测试建模
难点:测试的标准化;
相关工作:U2TP的专业化和扩展;重用了服务质量和容错性中的一些元素来表示稳健性测量。
三、创新方法
1.故障注入技术的采用。
2.实现了容错机制。
四、实验
实验1:用于稳健性测试的UML模型
要探究的问题:OMG UML测试方法;稳健性测量概念;稳健性测试扩展
结论:稳健性测试案例研究将举例说明许多U2TP概念的使用。但是,一些概念需要专门或新引入以涵盖稳健性测试的规范。我们希望使用测量来代替判断。我们还希望模型明确识别负责注入故障的结构和行为元素。
实际上,特征可能具有多个维度,其中每个维度可以是自身的特征。在MARTE中,非功能属性只能与一个nfp维度相关联,因此我们使用一个包来引入类似Qos的结构。即使MARTE还提供了丰富的预定元素,我们选择QoS特性来表示稳健性测量,有利于结构化设施和紧凑性。
稳健性测试扩展机制允许我们创建新的建模元素,带来与稳健性测试相关的特定属性。刻板印象有助于我们识别模型中感兴趣的元素。
实验2:网络服务的案例研究
要探究的问题:稳健性的测量;实验架构;故障模型与数据表示;Golden run和注射运行;
结论:实际上,比较替代实施的稳健性是一个尖锐的问题。让我们以碰撞比例为例进行比较。一般来说,灾难性故障模式显然比阻碍模式更严重。。但是,是否最好在其余时间进行稀疏崩溃和无效参数的正确处理,或者没有崩溃但是频繁的异常终止和返回的不适当的错误代码,由服务集成商决定。此外,其他指标也可能是有意义的,如性能下降。鲁棒性评估的固有困难由我们从QoS标准中重用的概念捕获,即评估必须考虑特征的多个特征和多个维度。
正确记录所需的测试组件集以及SUT,测试组件和故障注入部件之间的连接非常重要。纯文本描述可能不够清晰。图解视图(例如UML视图)提供了更充分的支持。附加到模型元素的构造型也通过明确组件所扮演的角色来有助于图的清晰度。
其原理通常显示为具有两个参数的服务请求(在案例研究中,Request1将是NewCustomer,ChangePaymentMethod 等 请 求 ) 。消 息 数 据 由 类MsgRequest1建模,该类继承Msg的标头。故障模型附加到各种参数。可以从数据池中选择有效和错误请求。
事实证明,复杂的测试架构具有挑战性。我们发现UML图的视觉支持,专门用于表示组件角色的构造型,对于文档目的非常有用。总体而言,案例研究的结果在模拟真实稳健性测试实验的能力方面非常有前途。
五、结论
作者的总结:这项工作提出了对UML测试配置文件的扩展,使其适用于稳健性测试实验的文档。Golden和注入运行是作为测试用例的专业化而引入的。他们的行为描述涉及工作负载和故障负载元素。测试组件可以具有注入器角色。负责测量的分析仪取代负责判决的仲裁者。稳健性是一种多维QoS特性,由QoSFT标准定义。替代定义可以使用一组MARTE的非功能属性分组到包中。
自己的评价:稳健性测试是黑盒测试的一种特定形式,通过研究错误或压力的输入条件(例如,故障或攻击)是否可能改变系统的常规行为来补充一致性测试。一个强大的系统可以处理由其他系统或计算环境引起的意外输入,并且即使在提交到恶劣环境时也可以提供可靠的服务。
参考文献:
【1】Schlipf Lori, Miller Shendra, Ferguson Mary et al.. CONRAD Testing Algorithm: Microbicidal Compounds Screened For Cytotoxicity and Activity Against HIV-1[J]. Retrovirology, 2005, 2(Suppl+1).
【2】Belén Lloveras, Silvia Gomez, Francesc Alameda et al.. Correction: HPV Testing by cobas HPV Test in a Population from Catalonia.[J]. PLoS ONE, 2018, 8(10).
【3】Jane N. Mutanga, Juliette Raymond, Megan S. Towle et al.. Correction: Institutionalizing Provider-Initiated HIV Testing and Counselling for Children: An Observational Case Study from Zambia.[J]. PLoS ONE, 2018, 7(5).
【4】Eric Lugada, Debra Millar, John Haskew et al.. Correction: Rapid Implementation of an Integrated Large-Scale HIV Counseling and Testing, Malaria, and Diarrhea Prevention Campaign in Rural Kenya.[J]. PLoS ONE, 2018, 5(9).
【5】Eric Lugada, Debra Millar, John Haskew et al.. Correction: Rapid Implementation of an Integrated Large-Scale HIV Counseling and Testing, Malaria, and Diarrhea Prevention Campaign in Rural Kenya.[J]. PLoS ONE, 2018, 6(6).
UML-Based Modeling of Robustness Testing的更多相关文章
- A Complete Tutorial on Tree Based Modeling from Scratch (in R & Python)
A Complete Tutorial on Tree Based Modeling from Scratch (in R & Python) MACHINE LEARNING PYTHON ...
- UML(Unified Modeling Language)统一建模语言
什么是模型 模型是对现实的简化 模型是提供系统的蓝图,模型可是包括详细计划.也可是是从更高程度考虑系统的总体计划,每个系统可以从不同的方面用不通过的模型来描述.因而每个模型都是在语义上闭合的抽象系统. ...
- UML(Unified Modeling Language)同一建模语言
wiki定义: UML is a general-purpose, developmental, modeling language in the field of software engineer ...
- 学习笔记之UML ( Unified Modeling Language )
Unified Modeling Language - Wikipedia https://en.wikipedia.org/wiki/Unified_Modeling_Language The Un ...
- UML快速回顾
UML(Unified Modeling Language)统一建模语言的概念已经出现了近20年,虽然并不是所有的概念都非常有实践意义,但常见的用例图.类图.序列图和状态图却实实在在非常有效,是项目中 ...
- UML浅析
UML概述 UML (Unified Modeling Language)为面向对象软件设计提供统一的.标准的.可视化的建模语言.适用于描述以用例为驱动,以体系结构为中心的软件设计的全过程. UML模 ...
- 统一建模语言(UML) 版本 2.0
原文: http://www.ibm.com/developerworks/cn/rational/321_uml/ 简介 参考 UML 基础系列的其他文章和教程 UML基础: 统一建模语言简介 UM ...
- 软件工程——UML简介
UML概述: UML是对OMT(对象建模技术).Booth(Booch方法)以及OOSE(面向对象的软件工程)等记号系统实施统一工作后得到的一种记号系统. UML(Unified Modeling L ...
- php设计模式——UML类图
前言 用php开发两年多了,准备也写一下平时常用的设计模式,都是基于自己的实践经验,当然,用设计模式之前首先要看懂设计模式,因此这里首先讲解一下UML类图.通过UML类图,能更好的和大家交流,也能很容 ...
随机推荐
- java课程之团队开发冲刺1.5
一.总结昨天进度 1.昨天由于时间较少,没有太多的时间来进行学习Sqlite 二.遇到的困难 1.由于最终的程序需要调用本地的数据库,所以我们需要在安装程序的时候就需要直接附带安装一个本地的数据库到手 ...
- React forwardRef:跳转引用
一 在DOM组件中使用 import React, { Component } from 'react'; // 跳转引用对象本身并不关心ref,而是由渲染函数转发ref const FancyBut ...
- Spring常用注解总结(2)
@Autowired "自动填装",作用是为了消除代码JAVA代码里面的getter/setter与bean属性中的property. @Autowired默认按类型匹配的方式,在 ...
- 《Java从入门到精通》学习总结2
1. 在JAVA语言中对静态方法有两点规定: 在静态方法中不可以使用this关键字 在静态方法中不可以直接调用非静态方法 2. 不能将方法体内的局部变量声明为static的 3. 引用只是存放一个对象 ...
- centos7下编译安装nginx-1.16.0
一.下载nginx源码 http://nginx.org/en/download.html 如:nginx-1.16.0.tar.gz 二.创建用户和组,并解压 groupadd www userad ...
- PL/SQL链接Oracle出现乱码
1.用Pl/sql时,中文注释是乱码,需要查看下oracle server端的字符集. SQL语句:select userenv('language') from dual 结果:SIMPLIFIED ...
- 详解键盘事件(keydown,keypress,keyup)
一.键盘事件基础 1.定义 keydown:按下键盘键 keypress:紧接着keydown事件触发(只有按下字符键时触发) keyup:释放键盘键 顺序为:keydown -> keypre ...
- 消息中间件和JMS介绍
在一个公司创立初期,他可能只有几个应用,系统之间的关联也不是那么大,A系统调用B系统就直接调用B提供的API接口:后来这个公司做大了,他一步步发展有了几十个系统,这时候A系统要调用B系统的接口,但是B ...
- Swoole 理解manager进程和worker进程的启动顺序,以及演示如何停止或者重启服务端。
测试的代码主要功能:开启一个tcp服务器.然后设置了管理进程和工作进程start的回调进行更名.设置了pid_file保存了服务端启动的mast进程. <?php //创建Server对象,监听 ...
- Markdown使用小总结[不定时更新]
title: Markdown使用小总结 date: 2019-03-27 10:09:19 tags: Markdown --- 鸽了这么久,Markdown使用下降,因此写一篇博客来总结一下至今( ...