千家信息网

Fitnesse使用系列六

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,Table 表基本上这一节就是文档翻译,不打算写示例了,原因结尾会说。Table表的意思是你可以写出任意样式的表格来。那么任意样式的表格是如何被fitnesse识别并执行的?以及如何展示执行结果的?一
千家信息网最后更新 2025年02月03日Fitnesse使用系列六

Table 表

基本上这一节就是文档翻译,不打算写示例了,原因结尾会说。


Table表的意思是你可以写出任意样式的表格来。那么任意样式的表格是如何被fitnesse识别并执行的?以及如何展示执行结果的?一起来看一下。


前面几种表格的基本思路是--要么由表头来确定方法名(决策表);要么固定方法名(动态决策表、查询表);要么结合某些标识符确定方法名(脚本表)。总之给人有迹可循的印象,而Table表要换个思路--没有表头,也不用纠结于那个数传给了哪个变量。唯一必须有的方法名称是List doTable(List>)。可以看出输入参数是一个两级List,其实就是表格内容啦。里面一级List是某一行中的元素,都是字符串形式传过去的;外面一级List就是多个行了。返回值其实也是一个两级List,只不过简写了。写成这样就更精确了--List> doTable(List> table)。返回的List的结构也是一样的,各个行、行中的各个元素。元素也是字符串形式,内容如下:

pass--表示通过

pass:--通过且带信息

...不一一列举了,参考文档的说明


可以看出,在这个方法里我们要全面负责输入和输出,针对输入List中的内容做出判断和处理,再写到一个输出List里。这也意味着fixture相对灵活与复杂。


结果展示是这样的:把这个返回的"表格"(二级列表)中的元素和原始"表格"进行"逐格叠加"。当输出字符是pass,就把输入表的这个"格"变绿显示,如果是pass:message,就变绿且附加message显示,如果是fail,就变红显示,如果是空字符串,就黑色原始值显示,如果是没有标记的普通字符串,就替换原来的内容并且红色......

如果返回"表格"的大小、长短和输入表格不同,那么"叠加"会发生什么。fitnesse已经考虑到了这点--如果结果短了,后面就不管了,原样显示;如果结果长了,就附加显示出来


综上所述,Table表是一种最灵活的表示。但我个人相当不建议使用这种,除非从之前介绍的表格中找不到合适的。原因是这种代码写起来会比较复杂且通用性极差。我对复杂的东西有天然的抵触心理。有人说程序员分两种,一种是把简单的事情考虑的很复杂,一种是把复杂的事情考虑的尽量简单。毫无疑问我是后面这种。我所有的文章都是在尽量用最简单的方法来阐述事情。


表格 方法 复杂 输入 元素 内容 字符 结果 事情 字符串 就是 要么 输出 原始 原因 形式 思路 文档 样式 表头 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 昌平区品牌软件开发价格优惠 平安银行上海软件开发工程师 网络技术员的招聘问题 django 查看数据库 默认是数据库对象 护苗网络安全课之三观后感 陕西小桔网络技术体检标准 软件开发工程师背景 学位论文多长时间在数据库 数据库技术的术语与关系模型 软件开发费计入无形资产吗 学校机房服务器定期检查处理 戴尔网络安全股份 非粮化数据库技术指南建库 方舟主机专用服务器队友名称 数据库的事务控制 常州工程软件开发哪家好 红叶软件开发时间 深圳市飞腾软件开发有限公司 软件开发产品部门是什么 服务器机房地址是什么 洛阳西美网络技术 山东网络安全宣传周校园 永兴安卓软件开发多少钱一个月 灵思互联网科技有限公司 公安部网络安全保卫局 招聘 网络安全审查步骤期限 《网络安全法》法律适用情况 小学网络安全学生手抄报 hp服务器出现1786错误
0