非常中肯的评论,共识多多
您提的调试提醒了我,后面我在上传插件后,加一个测试 ,输入相关数据,可以测试插件本身, 在测试时,单独把这个测试线程的日志写为一个独立文件,可下下来看。
插件化后,调试确实是一个问题。后续,这块我们文档补充全,只要按文档来,我们来回调,对使用者来说就是个回调函数,目前这块文档还没写得很细。
这个回复打 100 分 哈哈
维护慢就是平台维护的问题了,而不是平台没有用 。本质上还是投入产出,看哪个合算
我就是感于之前的讨论,觉得我要说些什么
没太明白你的意思,itest work 中,A 接口提取了响应数据中的 某个值取名为 A ,这个 A 是不能重或的,,别的接口只是引用,和 key 没关系呀, 不同的接口,KEY 可能是 name ,等,我们不关记他的 Key ,只关心,他引用的变量。如下图,第一个图和第二个图都引用了 packageId 这个变量,和 key 无关呀。不知你说的 key 是参数名不,且我们支持 XXX.XX.XX 这种对向属性的 key
接口间只要存在参数引用 事实上就存在依赖关系,然后就可以推导出来了
对这个补充非非常好
最好是拖拽式,先录制,然后编排。实现接口数据和接口用例分离,业务流程和接口用例分离,通过编排来组合,又低代码,又解耦,又便于维护
可以试试 itest work
itest work 开源敏捷测试管理,包含极简的任务管理,测试管理,缺陷管理,测试环境管理,接口测试,接口 Mock,还有压测 ,又有丰富的统计分析,8 合 1 工作站。可按测试包分配测试用例执行,也可建测试迭代 (含任务,测试包,BUG,接口) 来组织测试工作,也有测试环境管理,还有很常用的测试度量;对于发版频繁,需求常变,itest 还可导出用例,线下修改、执行,新增后再导入(同步)到线上;且可根据测试策略来设置测试流程,并可实时调整;在测试看板中,能查看迭代报告,测试包执行情况,测试任务进展,也可以在看板上直接执行用包用例,也支持在线 web 思维导图写用例。让测试变得简单、敏捷,“好用、好看,好敏捷” ,是 itest wrok 追求的目标。概念及功能模型如下:
https://www.oschina.net/news/147977/itest-10-0-0-ga 10.0.0GA 今天刚发布,
不说了,最后一次回复 ApiController 里调用的是这个,笑死人了,这种代码,
https://gitee.com/tuzikuaipao/rabbit_test_platform_server/blob/master/src/main/java/com/rabbit/service/Impl/ExcApiServiceImpl.java
行不行不是你说了算,也不是我说了算,骗取不骗跑,大家明见
骗不骗对我没什么损失,我只是看到这种行为,这种风气不行,说出真相
连接口用到的参数都没地方体现,这能生产用??? 这要是测试接口能好使就有鬼了
装 B ,被人揭穿了,还说别人无知,这才是无知的表现,
请指出来,接行接口调用的代码在哪里 ,不要放一个壳子,
请问这几个属性,在接口类的哪里 ???? 如是在和他关联的对像里有这几个属性,请指出来是哪个实体类,lombok 只是省了 set get ,难道他能 自动给你加属性?
要开源可以不开源最新版,要开就开完全能跑的,伪开源,或是只是个壳 就不好了 。说不好听点,这是 “骗炮” 行为
我当然知道 lombok ,你接口对像中,接口的参数存哪,? Moel 包下,也没看到有别的和他关联的类,请告诉我,你存哪里,get,set 可以没有, 属性得有吧,
我很不喜欢这种骗子行为,现在这风气不好,说做了 XX X 平台就是为了增加面试时的资本或是和同行间多些谈资吗
https://gitee.com/tuzikuaipao/rabbit_test_platform_server
我看了开源出来的代码,感觉是个壳
controller 我看来全是增删改查,感觉是用工具生成的,然后我看了他接口这个实体类,就下同几个属性,
我找了整个 model 下的类,页面上这些属性都都地方存
/**
* id
*/
private Long id;
/**
* 接口名称
*/
private String name;
/**
* 业务流 id
*/
private Long businessId;
/**
* 业务流名称
*/
private String businessName;
/**
* 项目 id
*/
private Long projectId;
/**
* 类型 0 公共接口 业务流接口
*/
private Integer type;
/**
* 状态 0 启用 1 禁用
*/
private Integer status;
/**
* 备注
*/
private String remark;
/**
* createBy
*/
private String createBy;
/**
* createTime
*/
private Date createTime;
/**
* 排序
*/
private Integer sort;
/**
* updateBy
*/
private String updateBy;
/**
* updateTime
*/
private Date updateTime;
private static final long serialVersionUID = 1L;
}
我想参数是不是在子类中,没有,我找了,
接口 controller 就这点,
https://gitee.com/tuzikuaipao/rabbit_test_platform_server/blob/master/src/main/java/com/rabbit/controller/InterfaceController.java
/**
接口相关接口
*/
@Slf4j
@RestController
@RequestMapping("/interface")
@Api(tags = "接口相关接口")
public class InterfaceController {
@Autowired
private TTestInterfaceService testInterfaceService;
@GetMapping("/listPage")
@ApiOperation(value = "获取分页带参列表")
public ResponseInfo getPageList(@RequestParam(value = "pageNum") int pageNum, @RequestParam(value = "pageSize") int pageSize, @RequestParam(value = "serchData") String serchData) {
JSONObject jsonObject = JSONObject.parseObject(serchData);
TTestInterface testInterface = JSONObject.toJavaObject(jsonObject, TTestInterface.class);
PageInfo pageInfo = testInterfaceService.findByAllwithPage(pageNum, pageSize, testInterface);
return new ResponseInfo(true, pageInfo);
}
@GetMapping("/listByProjectId/{id}")
@ApiOperation(value = "获取列表")
public ResponseInfo listByProjectId(@PathVariable long id) {
return new ResponseInfo(true, testInterfaceService.findByProjectId(id));
}
@PostMapping("/add")
@ApiOperation(value = "新增")
public ResponseInfo savaTTestInterface(@RequestBody TTestInterface testInterface) {
List testInterfaces = testInterfaceService.findByNameAndProjectId(testInterface.getName(),testInterface.getProjectId());
if (testInterfaces.size() > 0) {
return new ResponseInfo(false, new ErrorInfo(520, "接口" + testInterface.getName() + "已存在"));
}
testInterface.setUpdateBy(UserUtil.getLoginUser().getUsername());
testInterface.setCreateBy(UserUtil.getLoginUser().getUsername());
testInterfaceService.insertSelective(testInterface);
return new ResponseInfo(true, "保存接口成功");
}
@PutMapping("/edit")
@ApiOperation(value = "编辑")
public ResponseInfo editTTestInterface(@RequestBody TTestInterface testInterface) {
List testInterfaces = testInterfaceService.findByNameAndProjectIdAndIdNot(testInterface.getName(),testInterface.getProj
作者这要么是不装开源,要么就是装怪,欺负别的人不看代码?
我是基于当前发布的提的疑问 ,如有不对大家拍我就是了,我是特不喜欢这种风气
EN 是这个理,后续我们也加上 优先级
我也是用 jsMind 改的 ,比较轻量,和 XMIND 一样,保持脑图本真的简洁,叶子作为用例,路径当模块,没有优先级等
快捷键同 xmind
https://www.oschina.net/news/146318/itest-10-0-0-rc-released
可以试试 itest work 开源免费 https://www.oschina.net/news/137751/itest-work-9-5-0-ga-u3-released
拖拽式设置断言和提取参数
压测下周发布
或许你可以看看这个 , 可以以纯脑图展现形式写标准用例,也可以在脑图用例维护模式下,写脑图用例 (脑图用例可以通过 ctrl+c 复制分支节点,然后 ctrl +v 粘贴到其他脑图文件上,可以是同或者跨项目间粘贴),且标准用例和脑图用例操作互通
详情见 https://www.oschina.net/news/137751/itest-work-9-5-0-ga-u3-released
还可以导出用例,线下处理了,再同步回线上,
在用例评审时,如上第一图,方便理清用例关系,如漏写的直接增加或是修改,复杂的通过详情查看明细
关于 B UG 状态 麻烦理解流程驱再来说,itest 又不是,让你下拉选 N 多状态,ITEST 按流程控制的,根据流程和当前状 态控制下一步可以演化,这一点不增加使用上的麻烦,这有什么不可以, 这是更精细化的管理 BU G 状态 ,又不带来体验,我就喜欢这样子,死板的教条,一切拿来主言就是对的吗,这是仁者见仁,智者见智的问题 .。相反写到解决方案中,一点不直观
我们是欢迎反馈的,但是这种高高在上的说教 ,不是反馈;有人说 itest work 是狗屎我都能按受,这种一派说教,没劲呀,太自以为事,有 BUG,有不足可以改,这姿态 只能呵呵
拨冷水不怕! 也没人规定,只能在解决方中写这些,我认为不直观,直接在状态中体现更好,都是做跟屁虫没用。
聊天天感 觉对牛弹琴,为什么这么说,
麻烦看看
定位就是测试,没看就高高在上说教! 我们也不是创业,就是觉得没一个我看来好用测试平台,所以我们就做 ,仅此而己
没法打字一一回复你,再加一个我们的概念模板图,教条,死扣理论这是不行的,解决测试管理过程中的问题就 OK