在html中,關於form表單的部分,其中按鈕類型就有button與submit,簡單的來理解,button就是一個單純的點擊,submit就不是單純的單擊,它會涉及到前后台的交互,
在selenium2的自動化測試中,點擊使用的方法就是click(),同時有另外一個方法為submit(),啟動對這二個方法經常很多人理解就出現問題,今天在在這里我以實際的案例說明
下,click()方法就是單純的點擊下,或者說是單擊下,但是submit()方法一般使用在有form標簽的表單中,下面就來實現這樣的一個過程中,把form表單中的信息,提交到后台(
后台這里使用的是django自己編寫的一個,具體這里不在詳細的介紹,只看效果。)
編寫如下的html的頁面,見源碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表單提交的學習</title>
</head>
<body>
<!--利用django設置的后台,來獲取form表單的提交,來查看實現這個過程的數據。-->
<form name="myForm" action="http://localhost:8000/data/" method="post">
Name:<input name="username" type="text" />
<br><br>
pwd:<input name="pwd" type="password" /><br>
<input type="submit" value="提交"/>
</form>
</body>
</html>
依據如上的html方法可以看到,無非就是在一個form表單中,填寫用戶名,填寫密碼,提交到http://localhost:8000/data/中,提交方式在html的form中,為get與post
方式,這里提交方式為post方式。
在django的views模塊中,編寫如下的代碼,實現http://localhost:8000/data/,見源碼:
#coding:utf-8
from django.shortcuts import render
from django.shortcuts import render_to_response
from django.http import HttpResponse
def getData(request):
print request.POST return HttpResponse('OK!')
同時注釋settings.py文件的 'django.middleware.common.CommonMiddleware','django.middleware.csrf.CsrfViewMiddleware',然后啟動django的后台,啟動的
命令為:
manage.py runserver
然后在瀏覽器訪問:http://localhost:8000/data/就可以看到在界面中顯示OK,打開之前的form表單的html頁面,填寫用戶名和密碼分別為admin,點擊提交,見后台獲取
到的提交信息,見截圖:
依據截圖來依次解釋,可以看到,后台獲取到的提交信息為:{u'username':[u'admin'],u'pwd':[u'admin']},可以看到是一個字典的形式,username與pwd是form表單中,
用戶名與密碼的name,再見html源碼:
<form name="myForm" action="http://localhost:8000/data/" method="post">
Name:<input name="username" type="text" />
<br><br>
pwd:<input name="pwd" type="password" /><br>
<input type="submit" value="提交"/>
</form>
admin就是在用戶名與密碼輸入框輸入的信息,這樣的一個過程就是submit按鈕提交的一個過程,那么在自動化測試中,click()方法是單純的點擊就很好理解了,submit()方法
不僅僅代表點擊,它只使用在有form表單的提交中使用。