`
weimou66
  • 浏览: 1246917 次
文章分类
社区版块
存档分类
最新评论

FOAF让我们开启一个全新的测试领域(可测试性)

 
阅读更多

引言:这是一个我们正要启动的项目,项目的背景在此无法说明。但希望与各位分享的是这个项目中我们即将使用的一种全新故障注入技术,这依赖于系统部构建的FOAF组件。这个组件解决多年以来,我们一直梦寐以求的一种测试要求。即可通过外部的一个视图工具,控制程序核心线程、函数、变量的运行情况。透过这个技术,测试组可以了解被监控线程运行的平均时间、平均消耗、测试用例执行逻辑覆盖、清晰关键队列的大小等等。

通过评审规格说明书来测试需求:

完整性:每一项需求都必须将所要实现的功能描述清楚,以使开发人员获得设计和实现这些功能所需的所有必要信息。

正确性:每一项需求都必须准确地陈述其要开发的功能。

一致性:一致性是指与其它软件需求或高层(系统,业务)需求不相矛盾。

可行性:每一项需求都必须是在已知系统和环境的权能和限制范围内可以实施的。

无二义性:对所有需求说明的读者都只能有一个明确统一的解释,由于自然语言极易导致二义性,所以尽量把每项需求用简洁明了的用户性的语言表达出来。

健壮性:需求的说明中是否对可能出现的异常进行了分析,并且对这些异常进行了容错处理。

必要性:“必要性”可以理解为每项需求都是用来授权你编写文档的“根源”。要使每项需求都能回溯至某项客户的输入,如Use Case或别的来源。

可测试性:每项需求都能通过设计测试用例或其它的验证方法来进行测试。

可修改性:每项需求只应在SRS中出现一次。这样更改时易于保持一致性。另外,使用目录表、索引和相互参照列表方法将使软件需求规格说明书更容易修改。

可跟踪性:应能在每项软件需求与它的根源和设计元素、源代码、测试用例之间建立起链接链,这种可跟踪性要求每项需求以一种结构化的,粒度好(Fine-Grained)的方式编写并单独标明,而不是大段大段的叙述。

可测试性?这是我们在需求规格中经常看到一个章节,也是能以描述且无法描述的一个章节。因为开发经理并不知道测试期望做什么,也不知道他们真正能帮测试人员做什么?

在没有FOAF组件之前,我们的测试经理经常痛苦的来问我?被测对象可测性应该如何识别,又如何去模拟?

我们的通常怎么做呢?

通常我们基于测试框架、测试设计、测试分析,将灰盒测试中的测试需求提取出来。最终,我们给开发提出一个可测性需求。

要求开发提供必要的测试日志,如:接收、发送数据大小、队列大小、接口、功能流程分支等。而这些要想真正做起来,需要开发人员订立配合。

FOAF组件为开发人员,提供了一个新的视角,即在项目构建的前期,就需要思考如何做到可测试、可观察。

些许,这个组件的应用模式,将为我们开启一个新的篇章。

即从需求、设计入手考虑软件的测试一些切入点,在完成构建后,我们已经得到了充分测试,而不在依赖于后端的系统验证。

最后:祝这个新项目顺利实施,并感谢系统部老大,为我们提供了一个全新的机会,探索未知世界。

分享到:
评论

相关推荐

    RDF-FOAF-REQUEST:城市

    RDF-FOAF-请求tp:使用 foaf 词汇对 dbpedia 执行过滤查询

    基于FOAF的分布式移动SNS应用*

    为了实现SNS用户维护独立的社交网络,保证其社交网络关系不被完全暴露和人际关系资源不被完全挖掘,同时支持用户在多个系统间的统一身份认证,并有效解决现有SNS 服务难以“虚实结合”的问题,本文基于FOAF提出了...

    基于FOAF演化博弈的网络资源可信度判别

    基于FOAF演化博弈的网络资源可信度判别

    基于FOAF和RDQL的电子商务合作伙伴查询方法 (2008年)

    使用语义Web框架中的RDF和RDFS作为描述数据,对基于RDFS的FOAF词汇进行扩充,使得对供应商的描述具有语义。进而使用RFQL查询语言对合作伙伴的数据进行搜素,提出利用支持RDQL的Jena框架进行多条件的复杂检索。提出了...

    foaf4j-开源

    foaf4java-Safelayer(http://labs.safelayer.com)基于Jena语义Web框架(http://jena.sourceforge.net),“ FOAF for Java”是用于轻松处理FOAF配置文件的工具包。 在http://xmlns.com/foaf/spec/中找到有关FOAF的...

    基于FOAF的分布式移动SNS应用.pdf

    #资源达人分享计划#

    visualization-apps:用于DCterms和FOAF本体的LinkedData可视化应用程序

    该项目是通过引导的。 您将在下面找到一些有关如何执行常见任务的信息。 您可以在找到本指南的最新版本。目录更改页面<title> 安装依赖项导入组件代码分割添加样式表后处理CSS 添加CSS预处理器(Sass...meta>...

    listparser:解析OPML,RDF + FOAF和iGoogle订阅列表

    listparser是一个Python模块,用于解析订阅列表(也称为阅读列表)并返回其找到的所有提要和订阅列表。 它支持OPML,RDF + FOAF和iGoogle导出的设置格式,并在Python 3.6及更高版本以及PyPy3中运行。用法>>> import...

    Belief Reasoning Recommendation --mashing up Web Information Fusion and FOAF

    This paper mashes up Web Information Fusion and FOAF (Friend of a Friend) to design a belief reasoning recommendation system for user service. Belief reasoning recommendation user service takes into ...

    python爬虫教程

    网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常被称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本,已被广泛应用于互联网领域。搜索引擎使用网络爬虫抓取Web网页、...

    网络爬虫一种搜索引擎

    传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法...

    ldbc_bm_ontology

    LDBC 基准本体论 1介绍 Benchmarking Ontology (BM) 将涵盖以下范围。 对于每个范围领域,我们列出了一些我们从中汲取灵感或重用的相关本体。 被测系统 (SUT) 硬件和价格:GoodRelations、 ... 这是一个相当雄心勃

    RDFvalidator-js:基于 JSON 的 RDF 验证器

    下一个带有约束的文件示例,它们被称为定义。 { "prefixes": { "foaf": "http://xmlns.com/foaf/0.1/", "xsd": "http://www.w3.org/2001/XMLSchema#" }, "definitions": [{ "name": "user", "type": "foaf...

    Python爬取网络资源代码.rar

    首先,咱先看下爬虫的定义:网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。一句话概括就是网上信息搬运工。 我们...

    RDFization_Foaf_Biblio:将搜寻对象中的联系人列表转换为FAOF人员和Bibiniontology Dubin Core RDF中的书目参考。 将人与参考文献联系起来

    RDFization_Foaf_Biblio 将清单中的联系人列表转换为FAOF人员和Bibion​​tology / Dubin Core RDF中的书目参考。 用参考文献链接人。 获取一组RDF三元组的脚本

    [详细完整版]爬虫基本知识.pdf

    爬⾍基本知识 ⼀、爬⾍简介 根据百度百科定义:⽹络爬⾍(⼜被称为⽹页蜘蛛,⽹络机器⼈,在FOAF社区中间,更经常的称为⽹页追逐者),是 ⼀种按照⼀定的规则,⾃动地抓取万维⽹信息的程序或者脚本。另外⼀些不常使...

    Python网络爬虫实战-Scrapy教程

    网络爬虫(又被称为网页蜘蛛,网络机器人,在 FOAF 社区中间,更经常的称为网页追逐者),是一种按照一 定的规则,自动的抓取万维网信息的程序或者脚本。 根据我的经验,要学习 Python 爬虫,我们要学习的共有 以下...

    ttl2jsonld:面向node.js和浏览器的Turtle到JSON-LD转换器,没有库依赖

    演示版在线演示可。 使用此转换器,您可以从Input Turtle获取Output JSON-LD ,如。输入乌龟@prefix foaf: <http> .<http> a foaf:Person; foaf:name " Manu Sporny " ; foaf:homepage <http> .输出JSON-LD { " @...

    python网络爬虫-入门基础学习.zip

    实施 :将网页以快照的形式保存在服务器上 ,进行关键字提取和垃圾数据剔除 ,提供用户 一个访问的方式 3.操作:爬取网页-》存储数据-》内容处理-》提供检索 4.搜索引擎排名—— PageRank 值——根据网站的流量...

    最入门的爬虫代码 python.zip

    实施 :将网页以快照的形式保存在服务器上 ,进行关键字提取和垃圾数据剔除 ,提供用户 一个访问的方式 3.操作:爬取网页-》存储数据-》内容处理-》提供检索 4.搜索引擎排名—— PageRank 值——根据网站的流量...

Global site tag (gtag.js) - Google Analytics