1. 報不可見異常Element is not currently visible and so may not be interacted with(單選題的答案設置)前端
就是元素的樣式或父級及以上元素含有不可顯示屬性,以至在有些瀏覽器中(FirefoxDriver)不能操做,但在正常的瀏覽器中它是可見和可用的。可經過元素對象的方法isDisplayed()檢測元素是否可顯示的瀏覽器
在定位的時候前端裏看到了是隱藏的樣子,可是沒意識到,報錯後,去掉定位裏最後一段隱藏的那個標籤,就能夠操做了學習
2. 日期控件的賦值(課程開始學習時間)spa
日期彈窗控件是iframe,可是經過switch_to.frame後操做老是不成功,因此開發給了另外一個思路,寫js直接賦值,還能避免操做日期控件會出現的問題。查詢百度裏給出的解決辦法都是去掉input的readonly屬性,看了看前端裏readonly屬性賦值是空,不是true,因此我試了試,不用去掉readonly直接賦值也OK,可是一得到焦點,日期控件就彈出,賦值後失去焦點就會出現undefined,看了看前端input的onfocus屬性有值,因此去掉了這個屬性再賦值,沒有再彈出日期控件,OK成功賦值code
1 #建議學習時間 2 timejs = "var setDate=document.getElementById(\"StudyTime\");setDate.removeAttribute('onfocus');" 3 driver.execute_script(timejs) 4 driver.find_element_by_id("StudyTime").send_keys("2016-08-22")