很久之前在win10上配置的测试环境: python 3.6.1+ selenium 3.3.3+ geckodriver 0.15.0以前run case是正常的,今天去run 同样的case时发现报错:send_keys results in Expected 【object Undefined】undefined to be a string。检查了下发现是firefox不知什么时候偷偷更新到version 58.0,配合旧版本的geckodiver 0.15.0会有这个问题。于是选择分别升级至当前最新版本(除python外)python 3.6.1+ selenium 3.11.0+ geckodriver 0.20.0+firefox v0.59.1后就解决了。
1. pip install -U selenium
2. 下载geckodriver 0.20.0的zip包,根据环境变量的设置,用最新版本的geckodriver.exe替换掉path中的旧版本。我的win10上path为
C:UsersusernameAppDataLocalProgramsgeckodriver
3. 将firefox升级至最新版本,并禁止firefox自动upgrade(为防止下次再出现与geckodriver不匹配的问题,我准备以后有需要时再手动更新firefox)