提交 36f5c51c 编写于 作者: 雨爱无痕

* Add result test case

上级 4e8bf632
......@@ -108,6 +108,7 @@ func GenEmptyScript(name, lang, pth string, productId int) {
info := make([]string, 0)
info = append(info, fmt.Sprintf("title=%s", name))
info = append(info, fmt.Sprintf("timeout=%d", 0))
info = append(info, fmt.Sprintf("cid=%d", 0))
info = append(info, fmt.Sprintf("pid=%d", productId))
......
......@@ -13,7 +13,6 @@ func CreateInterpreter(t *testing.T) {
if err != nil {
t.Error(err)
t.FailNow()
}
headless := false
var slowMo float64 = 100
......@@ -23,39 +22,32 @@ func CreateInterpreter(t *testing.T) {
if err != nil {
t.Errorf("Fail to launch the web interpreterBrowser: %v", err)
t.FailNow()
}
page, err := interpreterBrowser.NewPage()
if err != nil {
t.Errorf("Create the new page fail: %v", err)
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
err = page.Click("#navbar>>[title=\"设置\"]")
if err != nil {
t.Errorf("The Click interpreter nav fail: %v", err)
t.FailNow()
}
err = page.Click("text=新建运行环境")
if err != nil {
t.Errorf("The Click create interpreter fail: %v", err)
t.FailNow()
}
Locator, err := page.Locator("#interpreterFormModal select")
if err != nil {
t.Errorf("Find create interpreter input fail: %v", err)
t.FailNow()
}
langSelect, err := Locator.Nth(0)
if err != nil {
......@@ -72,20 +64,17 @@ func CreateInterpreter(t *testing.T) {
if err != nil {
t.Errorf("Find address input fail: %v", err)
t.FailNow()
}
_, err = pathSelect.SelectOption(playwright.SelectOptionValues{Indexes: &[]int{1}})
if err != nil {
t.Errorf("Fil address input fail: %v", err)
t.FailNow()
}
err = page.Click("#interpreterFormModal>>text=确定")
if err != nil {
t.Errorf("The Click submit form fail: %v", err)
t.FailNow()
}
Locator, err = page.Locator("#settingModal .z-tbody-td", playwright.PageLocatorOptions{HasText: "Python"})
c, err := Locator.Count()
......@@ -99,7 +88,6 @@ func EditInterpreter(t *testing.T) {
if err != nil {
t.Error(err)
t.FailNow()
}
headless := false
var slowMo float64 = 100
......@@ -111,51 +99,42 @@ func EditInterpreter(t *testing.T) {
if err != nil {
t.Errorf("Fail to launch the web interpreterBrowser: %v", err)
t.FailNow()
}
page, err := interpreterBrowser.NewPage()
if err != nil {
t.Errorf("Create the new page fail: %v", err)
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
err = page.Click("#navbar>>[title=\"设置\"]")
if err != nil {
t.Errorf("The Click interpreter nav fail: %v", err)
t.FailNow()
}
Locator, err := page.Locator("#settingModal .z-tbody-tr", playwright.PageLocatorOptions{HasText: "Python"})
if err != nil {
t.Errorf("Find python tr fail: %v", err)
t.FailNow()
}
Locator, err = Locator.Locator("text=编辑")
if err != nil {
t.Errorf("Find python edit btn fail: %v", err)
t.FailNow()
}
err = Locator.Click()
if err != nil {
t.Errorf("The Click update site fail: %v", err)
t.FailNow()
}
Locator, err = page.Locator("#interpreterFormModal select")
if err != nil {
t.Errorf("Find create interpreter input fail: %v", err)
t.FailNow()
}
langSelect, err := Locator.Nth(0)
if err != nil {
......@@ -172,20 +151,17 @@ func EditInterpreter(t *testing.T) {
if err != nil {
t.Errorf("Find address input fail: %v", err)
t.FailNow()
}
_, err = pathSelect.SelectOption(playwright.SelectOptionValues{Indexes: &[]int{1}})
if err != nil {
t.Errorf("Fil address input fail: %v", err)
t.FailNow()
}
err = page.Click("#interpreterFormModal>>text=确定")
if err != nil {
t.Errorf("The Click submit form fail: %v", err)
t.FailNow()
}
Locator, err = page.Locator("#settingModal .z-tbody-td", playwright.PageLocatorOptions{HasText: "Python"})
c, err := Locator.Count()
......@@ -199,7 +175,6 @@ func DeleteInterpreter(t *testing.T) {
if err != nil {
t.Error(err)
t.FailNow()
}
headless := false
var slowMo float64 = 100
......@@ -211,52 +186,43 @@ func DeleteInterpreter(t *testing.T) {
if err != nil {
t.Errorf("Fail to launch the web interpreterBrowser: %v", err)
t.FailNow()
}
page, err := interpreterBrowser.NewPage()
if err != nil {
t.Errorf("Create the new page fail: %v", err)
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
err = page.Click("#navbar>>[title=\"设置\"]")
if err != nil {
t.Errorf("The Click interpreter nav fail: %v", err)
t.FailNow()
}
Locator, err := page.Locator("#settingModal .z-tbody-tr", playwright.PageLocatorOptions{HasText: "Python"})
if err != nil {
t.Errorf("Find python tr fail: %v", err)
t.FailNow()
}
Locator, err = Locator.Locator("text=删除")
if err != nil {
t.Errorf("Find python edit btn fail: %v", err)
t.FailNow()
}
err = Locator.Click()
if err != nil {
t.Errorf("The Click update site fail: %v", err)
t.FailNow()
}
err = page.Click(":nth-match(.modal-action > button, 1)")
if err != nil {
t.Errorf("The Click submit form fail: %v", err)
t.FailNow()
}
page.WaitForTimeout(1000)
Locator, err = page.Locator("#settingModal .z-tbody-tr", playwright.PageLocatorOptions{HasText: "Python"})
......@@ -264,18 +230,15 @@ func DeleteInterpreter(t *testing.T) {
if err != nil || c > 0 {
t.Errorf("Delete interpreter fail: %v", err)
t.FailNow()
}
if err = interpreterBrowser.Close(); err != nil {
t.Errorf("The interpreterBrowser cannot be closed: %v", err)
t.FailNow()
}
if err = pw.Stop(); err != nil {
t.Errorf("The playwright cannot be stopped: %v", err)
t.FailNow()
}
}
......
package main
import (
"testing"
playwright "github.com/playwright-community/playwright-go"
)
var resultBrowser playwright.Browser
func SubmitResult(t *testing.T) {
pw, err := playwright.Run()
if err != nil {
t.Error(err)
t.FailNow()
}
headless := false
var slowMo float64 = 100
workspaceBrowser, err := pw.Chromium.Launch(playwright.BrowserTypeLaunchOptions{Headless: &headless, SlowMo: &slowMo})
if err != nil {
t.Errorf("Fail to launch the web workspaceBrowser: %v", err)
t.FailNow()
}
page, err := workspaceBrowser.NewPage()
if err != nil {
t.Errorf("Create the new page fail: %v", err)
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector(".tree-node")
if err != nil {
t.Errorf("Wait tree-node fail: %v", err)
t.FailNow()
}
Locator, err := page.Locator("#siteMenuToggle")
if err != nil {
t.Errorf("The siteMenuToggle is missing: %v", err)
t.FailNow()
}
err = Locator.Click()
if err != nil {
t.Errorf("The Click is fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector("#navbar .list-item")
if err != nil {
t.Errorf("Wait for site list nav fail: %v", err)
t.FailNow()
}
err = page.Click(".list-item-title>>text=单元测试站点")
if err != nil {
t.Errorf("The Click site nav fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector(".tree-node")
if err != nil {
t.Errorf("Wait tree-node fail: %v", err)
t.FailNow()
}
err = page.Click("#rightPane .result-list-item .list-item-title>>nth=0")
if err != nil {
t.Errorf("Click first result fail: %v", err)
}
err = page.Click(".result-action .btn:has-text('提交结果到禅道')")
if err != nil {
t.Errorf("Click re-exec failed case btn fail: %v", err)
}
_, err = page.WaitForSelector("#syncToZentaoModal")
if err != nil {
t.Errorf("Wait syncToZentaoModal fail: %v", err)
t.FailNow()
}
titleInput, err := page.Locator("#syncToZentaoModal>>.form-item:has-text('或输入新任务标题')>>input")
if err != nil {
t.Errorf("Find title input fail: %v", err)
t.FailNow()
}
err = titleInput.Fill("单元测试任务")
if err != nil {
t.Errorf("Fil title input fail: %v", err)
t.FailNow()
}
err = page.Click("#syncToZentaoModal>>text=确定")
if err != nil {
t.Errorf("The Click submit form fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector("#syncToZentaoModal", playwright.PageWaitForSelectorOptions{State: playwright.WaitForSelectorStateHidden})
if err != nil {
t.Errorf("Wait syncToZentaoModal hide fail: %v", err)
t.FailNow()
}
Locator, err = page.Locator(".toast-notification-container", playwright.PageLocatorOptions{HasText: "提交成功"})
c, err := Locator.Count()
if err != nil || c == 0 {
t.Errorf("Submit result to zentao fail: %v", err)
t.FailNow()
}
if err = workspaceBrowser.Close(); err != nil {
t.Errorf("The workspaceBrowser cannot be closed: %v", err)
t.FailNow()
}
if err = pw.Stop(); err != nil {
t.Errorf("The playwright cannot be stopped: %v", err)
t.FailNow()
}
}
func SubmitBug(t *testing.T) {
pw, err := playwright.Run()
if err != nil {
t.Error(err)
t.FailNow()
}
headless := false
var slowMo float64 = 100
workspaceBrowser, err := pw.Chromium.Launch(playwright.BrowserTypeLaunchOptions{Headless: &headless, SlowMo: &slowMo})
if err != nil {
t.Errorf("Fail to launch the web workspaceBrowser: %v", err)
t.FailNow()
}
page, err := workspaceBrowser.NewPage()
if err != nil {
t.Errorf("Create the new page fail: %v", err)
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector(".tree-node")
if err != nil {
t.Errorf("Wait tree-node fail: %v", err)
t.FailNow()
}
Locator, err := page.Locator("#siteMenuToggle")
if err != nil {
t.Errorf("The siteMenuToggle is missing: %v", err)
t.FailNow()
}
err = Locator.Click()
if err != nil {
t.Errorf("The Click is fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector("#navbar .list-item")
if err != nil {
t.Errorf("Wait for site list nav fail: %v", err)
t.FailNow()
}
err = page.Click(".list-item-title>>text=单元测试站点")
if err != nil {
t.Errorf("The Click site nav fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector(".tree-node")
if err != nil {
t.Errorf("Wait tree-node fail: %v", err)
t.FailNow()
}
err = page.Click("#rightPane .result-list-item .list-item-title>>nth=0")
if err != nil {
t.Errorf("Click first result fail: %v", err)
}
err = page.Click(".page-result .btn:has-text('提交缺陷到禅道')")
if err != nil {
t.Errorf("Click re-exec failed case btn fail: %v", err)
}
_, err = page.WaitForSelector("#submitBugModal")
if err != nil {
t.Errorf("Wait submitBugModal fail: %v", err)
t.FailNow()
}
err = page.Click("#submitBugModal>>text=确定")
if err != nil {
t.Errorf("The Click submit form fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector("#submitBugModal", playwright.PageWaitForSelectorOptions{State: playwright.WaitForSelectorStateHidden})
if err != nil {
t.Errorf("Wait submitBugModal hide fail: %v", err)
t.FailNow()
}
Locator, err = page.Locator(".toast-notification-container", playwright.PageLocatorOptions{HasText: "提交成功"})
c, err := Locator.Count()
if err != nil || c == 0 {
t.Errorf("Submit bug to zentao fail: %v", err)
t.FailNow()
}
if err = workspaceBrowser.Close(); err != nil {
t.Errorf("The workspaceBrowser cannot be closed: %v", err)
t.FailNow()
}
if err = pw.Stop(); err != nil {
t.Errorf("The playwright cannot be stopped: %v", err)
t.FailNow()
}
}
func TestUiResult(t *testing.T) {
t.Run("SubmitResult", SubmitResult)
t.Run("SubmitBug", SubmitBug)
}
......@@ -15,7 +15,7 @@ func RunScript(t *testing.T) {
t.Error(err)
t.FailNow()
}
headless := false
headless := true
var slowMo float64 = 100
workspaceBrowser, err := pw.Chromium.Launch(playwright.BrowserTypeLaunchOptions{Headless: &headless, SlowMo: &slowMo})
if err != nil {
......@@ -28,8 +28,7 @@ func RunScript(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -82,26 +81,32 @@ func RunScript(t *testing.T) {
resultTitleElement, err := page.QuerySelector("#rightPane .result-list-item .list-item-title")
if err != nil {
t.Errorf("Find log title in logPane fail: %v", err)
t.FailNow()
}
resultTitle, err := resultTitleElement.InnerText()
if err != nil || resultTitle != "1_string_match.php" {
t.Errorf("Find result in rightPane fail: %v", err)
t.FailNow()
}
timeElement, err := page.QuerySelector("#log-list .item .time")
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
logTime, err := timeElement.InnerText()
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTimeElement, err := page.QuerySelector("#rightPane .result-list-item .list-item-trailing-text")
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTime, err := resultTimeElement.InnerText()
if err != nil || logTime[:5] != resultTime {
t.Errorf("Find result in rightPane fail: %v", err)
t.FailNow()
}
if err = workspaceBrowser.Close(); err != nil {
......@@ -120,7 +125,7 @@ func RunSelectedScripts(t *testing.T) {
t.Error(err)
t.FailNow()
}
headless := false
headless := true
var slowMo float64 = 100
workspaceBrowser, err := pw.Chromium.Launch(playwright.BrowserTypeLaunchOptions{Headless: &headless, SlowMo: &slowMo})
if err != nil {
......@@ -133,8 +138,7 @@ func RunSelectedScripts(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -212,26 +216,32 @@ func RunSelectedScripts(t *testing.T) {
resultTitleElement, err := page.QuerySelector("#rightPane .result-list-item .list-item-title")
if err != nil {
t.Errorf("Find log title in logPane fail: %v", err)
t.FailNow()
}
resultTitle, err := resultTitleElement.InnerText()
if err != nil || resultTitle != "单元测试工作目录(2)" {
t.Errorf("Find result in rightPane fail: %v", err)
t.FailNow()
}
timeElement, err := page.QuerySelector("#log-list .item .time")
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
logTime, err := timeElement.InnerText()
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTimeElement, err := page.QuerySelector("#rightPane .result-list-item .list-item-trailing-text")
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTime, err := resultTimeElement.InnerText()
if err != nil || logTime[:5] != resultTime {
t.Errorf("Find result in rightPane fail: %v", err)
t.FailNow()
}
if err = workspaceBrowser.Close(); err != nil {
t.Errorf("The workspaceBrowser cannot be closed: %v", err)
......@@ -249,7 +259,7 @@ func RunOpenedAndLast(t *testing.T) {
t.Error(err)
t.FailNow()
}
headless := false
headless := true
var slowMo float64 = 100
workspaceBrowser, err := pw.Chromium.Launch(playwright.BrowserTypeLaunchOptions{Headless: &headless, SlowMo: &slowMo})
if err != nil {
......@@ -262,8 +272,7 @@ func RunOpenedAndLast(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -276,7 +285,6 @@ func RunOpenedAndLast(t *testing.T) {
if err != nil {
t.Errorf("The siteMenuToggle is missing: %v", err)
t.FailNow()
}
err = Locator.Click()
if err != nil {
......@@ -287,7 +295,6 @@ func RunOpenedAndLast(t *testing.T) {
if err != nil {
t.Errorf("Wait for site list nav fail: %v", err)
t.FailNow()
}
err = page.Click(".list-item-title>>text=单元测试站点")
if err != nil {
......@@ -324,21 +331,23 @@ func RunOpenedAndLast(t *testing.T) {
if err != nil {
t.Errorf("Click batchRunMenuToggle fail: %v", err)
t.FailNow()
}
err = page.Click(".list-item-content:has-text('执行打开文件')")
if err != nil {
t.Errorf("The Click Run opened scripts fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector("#log-list>>.msg-span>>:has-text('执行2个用例,耗时')")
if err != nil {
t.Errorf("Wait exec opened scripts result fail: %v", err)
t.FailNow()
}
element, err := page.QuerySelector("#log-list>>.msg-span>>:has-text('执行2个用例,耗时')")
innerText, err := element.InnerText()
Locator, err = page.Locator("#log-list>>code:has-text('执行2个用例,耗时')")
if err != nil {
t.Errorf("Find exec opened scripts result fail: %v", err)
t.FailNow()
}
innerText, err := Locator.InnerText()
if err != nil {
t.Errorf("Find exec opened scripts result fail: %v", err)
t.FailNow()
......@@ -356,9 +365,10 @@ func RunOpenedAndLast(t *testing.T) {
if err != nil || resultTitle != "单元测试工作目录(2)" {
t.Errorf("Find result in rightPane fail: %v", err)
}
timeElement, err := page.QuerySelector("#log-list .item .time")
timeElement, err := Locator.Locator(".time>>span")
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.Errorf("Find log time element in logPane fail: %v", err)
t.FailNow()
}
logTime, err := timeElement.InnerText()
if err != nil {
......@@ -377,21 +387,19 @@ func RunOpenedAndLast(t *testing.T) {
if err != nil {
t.Errorf("Click batchRunMenuToggle fail: %v", err)
t.FailNow()
}
err = page.Click(".list-item-content:has-text('执行上次')")
if err != nil {
t.Errorf("The Click Run last time fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector("#log-list>>.msg-span>>:has-text('执行2个用例,耗时')")
if err != nil {
t.Errorf("Wait exec last time result fail: %v", err)
t.FailNow()
}
element, err = page.QuerySelector("#log-list>>.msg-span>>:has-text('执行2个用例,耗时')")
innerText, err = element.InnerText()
Locator, err = page.Locator("#log-list>>code:has-text('执行2个用例,耗时')")
innerText, err = Locator.InnerText()
if err != nil {
t.Errorf("Find exec last time result fail: %v", err)
t.FailNow()
......@@ -403,26 +411,32 @@ func RunOpenedAndLast(t *testing.T) {
resultTitleElement, err = page.QuerySelector("#rightPane .result-list-item .list-item-title")
if err != nil {
t.Errorf("Find log title in logPane fail: %v", err)
t.FailNow()
}
resultTitle, err = resultTitleElement.InnerText()
if err != nil || resultTitle != "单元测试工作目录(2)" {
t.Errorf("Find result in rightPane fail: %v", err)
t.FailNow()
}
timeElement, err = page.QuerySelector("#log-list .item .time")
timeElement, err = Locator.Locator(".time>>span")
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.Errorf("Find log time element in logPane fail: %v", err)
t.FailNow()
}
logTime, err = timeElement.InnerText()
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTimeElement, err = page.QuerySelector("#rightPane .result-list-item .list-item-trailing-text")
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTime, err = resultTimeElement.InnerText()
if err != nil || logTime[:5] != resultTime {
t.Errorf("Find result in rightPane fail: %v", err)
t.FailNow()
}
if err = workspaceBrowser.Close(); err != nil {
t.Errorf("The workspaceBrowser cannot be closed: %v", err)
......@@ -440,7 +454,7 @@ func RunAll(t *testing.T) {
t.Error(err)
t.FailNow()
}
headless := false
headless := true
var slowMo float64 = 100
workspaceBrowser, err := pw.Chromium.Launch(playwright.BrowserTypeLaunchOptions{Headless: &headless, SlowMo: &slowMo})
if err != nil {
......@@ -453,8 +467,7 @@ func RunAll(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -467,7 +480,6 @@ func RunAll(t *testing.T) {
if err != nil {
t.Errorf("The siteMenuToggle is missing: %v", err)
t.FailNow()
}
err = Locator.Click()
if err != nil {
......@@ -478,7 +490,6 @@ func RunAll(t *testing.T) {
if err != nil {
t.Errorf("Wait for site list nav fail: %v", err)
t.FailNow()
}
err = page.Click(".list-item-title>>text=单元测试站点")
if err != nil {
......@@ -501,21 +512,23 @@ func RunAll(t *testing.T) {
if err != nil {
t.Errorf("Click batchRunMenuToggle fail: %v", err)
t.FailNow()
}
err = page.Click(".list-item-content:has-text('执行所有文件')")
if err != nil {
t.Errorf("The Click Run all scripts fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector("#log-list>>.msg-span>>:has-text('执行3个用例,耗时')")
if err != nil {
t.Errorf("Wait exec all scripts result fail: %v", err)
t.FailNow()
}
element, err := page.QuerySelector("#log-list>>.msg-span>>:has-text('执行3个用例,耗时')")
innerText, err := element.InnerText()
Locator, err = page.Locator("#log-list>>code:has-text('执行3个用例,耗时')")
if err != nil {
t.Errorf("Find exec all scripts result fail: %v", err)
t.FailNow()
}
innerText, err := Locator.InnerText()
if err != nil {
t.Errorf("Find exec all scripts result fail: %v", err)
t.FailNow()
......@@ -527,22 +540,27 @@ func RunAll(t *testing.T) {
resultTitleElement, err := page.QuerySelector("#rightPane .result-list-item .list-item-title")
if err != nil {
t.Errorf("Find log title in logPane fail: %v", err)
t.FailNow()
}
resultTitle, err := resultTitleElement.InnerText()
if err != nil || resultTitle != "单元测试工作目录(3)" {
t.Errorf("Find result in rightPane fail: %v", err)
t.FailNow()
}
timeElement, err := page.QuerySelector("#log-list .item .time")
timeElement, err := Locator.Locator(".time>>span")
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.Errorf("Find log time element in logPane fail: %v", err)
t.FailNow()
}
logTime, err := timeElement.InnerText()
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTimeElement, err := page.QuerySelector("#rightPane .result-list-item .list-item-trailing-text")
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTime, err := resultTimeElement.InnerText()
if err != nil || logTime[:5] != resultTime {
......@@ -564,7 +582,7 @@ func RunReExecFailCase(t *testing.T) {
t.Error(err)
t.FailNow()
}
headless := false
headless := true
var slowMo float64 = 100
workspaceBrowser, err := pw.Chromium.Launch(playwright.BrowserTypeLaunchOptions{Headless: &headless, SlowMo: &slowMo})
if err != nil {
......@@ -577,8 +595,7 @@ func RunReExecFailCase(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -592,7 +609,6 @@ func RunReExecFailCase(t *testing.T) {
if err != nil {
t.Errorf("The siteMenuToggle is missing: %v", err)
t.FailNow()
}
err = Locator.Click()
if err != nil {
......@@ -603,7 +619,6 @@ func RunReExecFailCase(t *testing.T) {
if err != nil {
t.Errorf("Wait for site list nav fail: %v", err)
t.FailNow()
}
err = page.Click(".list-item-title>>text=单元测试站点")
if err != nil {
......@@ -628,8 +643,12 @@ func RunReExecFailCase(t *testing.T) {
t.Errorf("Wait exec script result fail: %v", err)
t.FailNow()
}
element, err := page.QuerySelector("#log-list>>.msg-span>>:has-text('执行1个用例,耗时')")
innerText, err := element.InnerText()
Locator, err = page.Locator("#log-list>>code:has-text('执行1个用例,耗时')")
if err != nil {
t.Errorf("Find exec script log fail: %v", err)
t.FailNow()
}
innerText, err := Locator.InnerText()
if err != nil {
t.Errorf("Find exec script result fail: %v", err)
t.FailNow()
......@@ -641,26 +660,153 @@ func RunReExecFailCase(t *testing.T) {
resultTitleElement, err := page.QuerySelector("#rightPane .result-list-item .list-item-title")
if err != nil {
t.Errorf("Find log title in logPane fail: %v", err)
t.FailNow()
}
resultTitle, err := resultTitleElement.InnerText()
if err != nil || resultTitle != "单元测试工作目录(3)" {
if err != nil || resultTitle != "1_string_match.php" {
t.Errorf("Find result in rightPane fail: %v", err)
t.FailNow()
}
timeElement, err := page.QuerySelector("#log-list .item .time")
timeElement, err := Locator.Locator(".time>>span")
if err != nil || resultTitle != "1_string_match.php" {
t.Errorf("Find log time element in logPane fail: %v", err)
t.FailNow()
}
logTime, err := timeElement.InnerText()
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTimeElement, err := page.QuerySelector("#rightPane .result-list-item .list-item-trailing-text")
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTime, err := resultTimeElement.InnerText()
if err != nil || logTime[:5] != resultTime {
t.Errorf("Find result in rightPane fail: %v", err)
t.FailNow()
}
if err = workspaceBrowser.Close(); err != nil {
t.Errorf("The workspaceBrowser cannot be closed: %v", err)
t.FailNow()
}
if err = pw.Stop(); err != nil {
t.Errorf("The playwright cannot be stopped: %v", err)
t.FailNow()
}
}
func RunReExecAllCase(t *testing.T) {
pw, err := playwright.Run()
if err != nil {
t.Error(err)
t.FailNow()
}
headless := true
var slowMo float64 = 100
workspaceBrowser, err := pw.Chromium.Launch(playwright.BrowserTypeLaunchOptions{Headless: &headless, SlowMo: &slowMo})
if err != nil {
t.Errorf("Fail to launch the web workspaceBrowser: %v", err)
t.FailNow()
}
page, err := workspaceBrowser.NewPage()
if err != nil {
t.Errorf("Create the new page fail: %v", err)
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector(".tree-node")
if err != nil {
t.Errorf("Wait tree-node fail: %v", err)
t.FailNow()
}
Locator, err := page.Locator("#siteMenuToggle")
if err != nil {
t.Errorf("The siteMenuToggle is missing: %v", err)
t.FailNow()
}
err = Locator.Click()
if err != nil {
t.Errorf("The Click is fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector("#navbar .list-item")
if err != nil {
t.Errorf("Wait for site list nav fail: %v", err)
t.FailNow()
}
err = page.Click(".list-item-title>>text=单元测试站点")
if err != nil {
t.Errorf("The Click site nav fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector(".tree-node")
if err != nil {
t.Errorf("Wait tree-node fail: %v", err)
t.FailNow()
}
err = page.Click("#rightPane .result-list-item .list-item-title>>nth=0")
if err != nil {
t.Errorf("Click first result fail: %v", err)
}
err = page.Click(".result-action .btn:has-text('重新执行所有用例')")
if err != nil {
t.Errorf("Click re-exec failed case btn fail: %v", err)
}
_, err = page.WaitForSelector("#log-list>>.msg-span>>:has-text('执行3个用例,耗时')")
if err != nil {
t.Errorf("Wait exec script result fail: %v", err)
t.FailNow()
}
Locator, err = page.Locator("#log-list>>code:has-text('执行3个用例,耗时')")
if err != nil {
t.Errorf("Find exec script log fail: %v", err)
t.FailNow()
}
innerText, err := Locator.InnerText()
if err != nil {
t.Errorf("Find exec script result fail: %v", err)
t.FailNow()
}
if !strings.Contains(innerText, "2(66.0%) 通过,1(33.0%) 失败") {
t.Errorf("Exec failed case fail: %v", err)
t.FailNow()
}
resultTitleElement, err := page.QuerySelector("#rightPane .result-list-item .list-item-title")
if err != nil {
t.Errorf("Find log title in logPane fail: %v", err)
t.FailNow()
}
resultTitle, err := resultTitleElement.InnerText()
if err != nil || resultTitle != "单元测试工作目录(3)" {
t.Errorf("Find result in rightPane fail: %v", err)
t.FailNow()
}
timeElement, err := Locator.Locator(".time>>span")
if err != nil {
t.Errorf("Find log time element in logPane fail: %v", err)
t.FailNow()
}
logTime, err := timeElement.InnerText()
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTimeElement, err := page.QuerySelector("#rightPane .result-list-item .list-item-trailing-text")
if err != nil {
t.Errorf("Find log time in logPane fail: %v", err)
t.FailNow()
}
resultTime, err := resultTimeElement.InnerText()
if err != nil || logTime[:5] != resultTime {
t.Errorf("Find result in rightPane fail: %v", err)
t.FailNow()
}
if err = workspaceBrowser.Close(); err != nil {
t.Errorf("The workspaceBrowser cannot be closed: %v", err)
......@@ -673,9 +819,10 @@ func RunReExecFailCase(t *testing.T) {
}
func TestUiRun(t *testing.T) {
// t.Run("RunScript", RunScript)
// t.Run("RunSelectedScripts", RunSelectedScripts)
// t.Run("RunOpenedAndLast", RunOpenedAndLast)
// t.Run("RunAll", RunAll)
t.Run("RunScript", RunScript)
t.Run("RunSelectedScripts", RunSelectedScripts)
t.Run("RunOpenedAndLast", RunOpenedAndLast)
t.Run("RunAll", RunAll)
t.Run("RunReExecAllCase", RunReExecAllCase)
t.Run("RunReExecFailCase", RunReExecFailCase)
}
......@@ -13,7 +13,6 @@ func CreateSite(t *testing.T) {
if err != nil {
t.Error(err)
t.FailNow()
}
headless := false
var slowMo float64 = 100
......@@ -23,112 +22,93 @@ func CreateSite(t *testing.T) {
if err != nil {
t.Errorf("Fail to launch the web siteBrowser: %v", err)
t.FailNow()
}
page, err := siteBrowser.NewPage()
if err != nil {
t.Errorf("Create the new page fail: %v", err)
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
// page.WaitForSelector(".tree")
Locator, err := page.Locator("#siteMenuToggle")
if err != nil {
t.Errorf("The siteMenuToggle is missing: %v", err)
t.FailNow()
}
err = Locator.Click()
if err != nil {
t.Errorf("The Click is fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector("#navbar .list-item")
if err != nil {
t.Errorf("Wait for site list nav fail: %v", err)
t.FailNow()
}
err = page.Click("text=禅道站点管理")
if err != nil {
t.Errorf("The Click site nav fail: %v", err)
t.FailNow()
}
// page.WaitForSelector(".modal-title")
err = page.Click("text=新建站点")
if err != nil {
t.Errorf("The Click create site fail: %v", err)
t.FailNow()
}
Locator, err = page.Locator("#siteFormModal input")
if err != nil {
t.Errorf("Find create site input fail: %v", err)
t.FailNow()
}
titleInput, err := Locator.Nth(0)
if err != nil {
t.Errorf("Find title input fail: %v", err)
t.FailNow()
}
err = titleInput.Fill("单元测试站点")
if err != nil {
t.Errorf("Fil title input fail: %v", err)
t.FailNow()
}
addressInput, err := Locator.Nth(1)
if err != nil {
t.Errorf("Find address input fail: %v", err)
t.FailNow()
}
err = addressInput.Fill("http://127.0.0.1/zentao/")
if err != nil {
t.Errorf("Fil address input fail: %v", err)
t.FailNow()
}
nameInput, err := Locator.Nth(2)
if err != nil {
t.Errorf("Find name input fail: %v", err)
t.FailNow()
}
err = nameInput.Fill("admin")
if err != nil {
t.Errorf("Fil name input fail: %v", err)
t.FailNow()
}
pwdInput, err := Locator.Nth(3)
if err != nil {
t.Errorf("Find passwd input fail: %v", err)
t.FailNow()
}
err = pwdInput.Fill("123456.")
if err != nil {
t.Errorf("Fil passwd input fail: %v", err)
t.FailNow()
}
err = page.Click("text=确定")
if err != nil {
t.Errorf("The Click submit form fail: %v", err)
t.FailNow()
}
page.WaitForTimeout(1000)
Locator, err = page.Locator(".list-item-content span", playwright.PageLocatorOptions{HasText: "单元测试站点"})
......@@ -136,18 +116,15 @@ func CreateSite(t *testing.T) {
if err != nil || c == 0 {
t.Errorf("Find created site fail: %v", err)
t.FailNow()
}
if err = siteBrowser.Close(); err != nil {
t.Errorf("The siteBrowser cannot be closed: %v", err)
t.FailNow()
}
if err = pw.Stop(); err != nil {
t.Errorf("The playwright cannot be stopped: %v", err)
t.FailNow()
}
}
func EditSite(t *testing.T) {
......@@ -156,7 +133,6 @@ func EditSite(t *testing.T) {
if err != nil {
t.Error(err)
t.FailNow()
}
headless := false
var slowMo float64 = 100
......@@ -166,38 +142,31 @@ func EditSite(t *testing.T) {
if err != nil {
t.Errorf("Fail to launch the web siteBrowser: %v", err)
t.FailNow()
}
page, err := siteBrowser.NewPage()
if err != nil {
t.Errorf("Create the new page fail: %v", err)
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
Locator, err := page.Locator("#siteMenuToggle")
if err != nil {
t.Errorf("The siteMenuToggle is missing: %v", err)
t.FailNow()
}
err = Locator.Click()
if err != nil {
t.Errorf("The Click is fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector("#navbar .list-item")
if err != nil {
t.Errorf("Wait for site list nav fail: %v", err)
t.FailNow()
}
err = page.Click("text=禅道站点管理")
if err != nil {
......@@ -212,79 +181,66 @@ func EditSite(t *testing.T) {
CreateSite(t)
EditSite(t)
return
}
Locator, err = page.Locator(".list-item", playwright.PageLocatorOptions{HasText: "单元测试站点"})
if err != nil {
t.Errorf("Find test site fail: %v", err)
t.FailNow()
}
err = page.Click("text=编辑")
if err != nil {
t.Errorf("The Click update site fail: %v", err)
t.FailNow()
}
Locator, err = page.Locator("#siteFormModal input")
if err != nil {
t.Errorf("Find update site input fail: %v", err)
t.FailNow()
}
titleInput, err := Locator.Nth(0)
if err != nil {
t.Errorf("Find title input fail: %v", err)
t.FailNow()
}
err = titleInput.Fill("单元测试站点-update")
if err != nil {
t.Errorf("Fil title input fail: %v", err)
t.FailNow()
}
addressInput, err := Locator.Nth(1)
if err != nil {
t.Errorf("Find address input fail: %v", err)
t.FailNow()
}
err = addressInput.Fill("http://127.0.0.1/zentao/")
if err != nil {
t.Errorf("Fil address input fail: %v", err)
t.FailNow()
}
nameInput, err := Locator.Nth(2)
if err != nil {
t.Errorf("Find name input fail: %v", err)
t.FailNow()
}
err = nameInput.Fill("admin")
if err != nil {
t.Errorf("Fil name input fail: %v", err)
t.FailNow()
}
pwdInput, err := Locator.Nth(3)
if err != nil {
t.Errorf("Find passwd input fail: %v", err)
t.FailNow()
}
err = pwdInput.Fill("123456.")
if err != nil {
t.Errorf("Fil passwd input fail: %v", err)
t.FailNow()
}
err = page.Click("#siteFormModal>>.modal-action>>span:has-text(\"确定\")")
if err != nil {
t.Errorf("The Click submit form fail: %v", err)
t.FailNow()
}
page.WaitForTimeout(1000)
Locator, err = page.Locator(".list-item-content", playwright.PageLocatorOptions{HasText: "单元测试站点-update"})
......@@ -292,18 +248,15 @@ func EditSite(t *testing.T) {
if err != nil || c == 0 {
t.Errorf("Find update site fail: %v", err)
t.FailNow()
}
if err = siteBrowser.Close(); err != nil {
t.Errorf("The siteBrowser cannot be closed: %v", err)
t.FailNow()
}
if err = pw.Stop(); err != nil {
t.Errorf("The playwright cannot be stopped: %v", err)
t.FailNow()
}
}
func DeleteSite(t *testing.T) {
......@@ -311,7 +264,6 @@ func DeleteSite(t *testing.T) {
if err != nil {
t.Error(err)
t.FailNow()
}
headless := false
var slowMo float64 = 100
......@@ -321,65 +273,54 @@ func DeleteSite(t *testing.T) {
if err != nil {
t.Errorf("Fail to launch the web siteBrowser: %v", err)
t.FailNow()
}
page, err := siteBrowser.NewPage()
if err != nil {
t.Errorf("Create the new page fail: %v", err)
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
// page.WaitForSelector(".tree")
Locator, err := page.Locator("#siteMenuToggle")
if err != nil {
t.Errorf("The siteMenuToggle is missing: %v", err)
t.FailNow()
}
err = Locator.Click()
if err != nil {
t.Errorf("The Click is fail: %v", err)
t.FailNow()
}
_, err = page.WaitForSelector("#navbar .list-item")
if err != nil {
t.Errorf("Wait for site list nav fail: %v", err)
t.FailNow()
}
err = page.Click("text=禅道站点管理")
if err != nil {
t.Errorf("The Click site nav fail: %v", err)
t.FailNow()
}
// page.WaitForSelector(".modal-title")
Locator, err = page.Locator(".list-item", playwright.PageLocatorOptions{HasText: "单元测试站点"})
if err != nil {
t.Errorf("Find test site fail: %v", err)
t.FailNow()
}
err = page.Click("text=删除")
if err != nil {
t.Errorf("The Click delete site fail: %v", err)
t.FailNow()
}
page.WaitForTimeout(1000)
err = page.Click(":nth-match(.modal-action > button, 1)")
if err != nil {
t.Errorf("The Click submit form fail: %v", err)
t.FailNow()
}
page.WaitForTimeout(1000)
Locator, err = page.Locator(".list-item-content", playwright.PageLocatorOptions{HasText: "单元测试站点"})
......@@ -387,18 +328,15 @@ func DeleteSite(t *testing.T) {
if err != nil || c > 0 {
t.Errorf("Delete site fail: %v", err)
t.FailNow()
}
if err = siteBrowser.Close(); err != nil {
t.Errorf("The siteBrowser cannot be closed: %v", err)
t.FailNow()
}
if err = pw.Stop(); err != nil {
t.Errorf("The playwright cannot be stopped: %v", err)
t.FailNow()
}
}
......
......@@ -31,8 +31,7 @@ func CreateWorkspace(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -161,8 +160,7 @@ func SyncFromZentao(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -239,8 +237,7 @@ func SyncToZentao(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -305,8 +302,7 @@ func Copy(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -402,8 +398,7 @@ func DeleteScript(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -479,8 +474,7 @@ func DeleteDir(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -557,8 +551,7 @@ func DeleteWorkspace(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -624,8 +617,7 @@ func Clip(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -722,8 +714,7 @@ func FilterDir(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -797,8 +788,7 @@ func FilterSuite(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......@@ -883,8 +873,7 @@ func FilterTask(t *testing.T) {
t.FailNow()
}
if _, err = page.Goto("http://127.0.0.1:8000/", playwright.PageGotoOptions{
WaitUntil: playwright.WaitUntilStateDomcontentloaded,
}); err != nil {
WaitUntil: playwright.WaitUntilStateDomcontentloaded}); err != nil {
t.Errorf("The specific URL is missing: %v", err)
t.FailNow()
}
......
<template>
<ZModal
id="submitBugModal"
:showModal="showModalRef"
@onCancel="close"
@onOk="submit"
......
<template>
<ZModal
id="syncToZentaoModal"
:showModal="showModalRef"
@onCancel="close"
@onOk="submit"
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册