

背景
有一个平台:点击提交按钮会出现以下三种情况
1:提交->弹窗1(只存在5秒)->关闭网页
2:提交->直接弹窗(存在5秒左右):提交成功
3:提交->弹窗2(一直存在)->点击按钮->提交成功
这里比较难受的是点击提交之后,由于无法根据业务填写的资料去预判点击提交按钮之后会出现哪种情况
这里我尝试过:点击提交之后直接判断:
情况二提交成功(3秒超时)-> 判断弹窗1 ->判断弹窗2
但是有时候由于网络原因,情况二迟迟不出来导致超时,跳入弹窗1,使得后续的写入记录有问题,整个流程写的也很繁琐
解决方法:并发子流程,在点击提交按钮之后,并发三个情况的子流程针对这个网页做等待元素判断,并且将结果写入全局变量:判断结果

{'提交结果': True, '不翻译结果': False, '提交失败结果': False}
{'提交失败结果': True, '不翻译结果': False, '提交结果': False}
这里测试了两次都是没有问题的