在html中,關於form表單的部分,其中按鈕類型就有button與submit,簡單的來理解,button就是一個單純的點擊,submit就不是單純的單擊,它會涉及到前後臺的交互,
在selenium2的自動化測試中,點擊使用的方法就是click(),同時有另外一個方法爲submit(),啓動對這二個方法經常很多人理解就出現問題,今天在在這裏我以實際的案例說明
下,click()方法就是單純的點擊下,或者說是單擊下,但是submit()方法一般使用在有form標籤的表單中,下面就來實現這樣的一個過程中,把form表單中的信息,提交到後臺
編寫如下的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表單的提交中使用。