簡體   English   中英

賽普拉斯比較兩個字符串

[英]Cypress compare two strings

我在 HTML 中有一個 h1 標簽,其中包含每 6 秒更新一次的實際時間(年、月、日和時間),它可以工作。 我需要檢查六秒鍾后時間是否改變。 問題是我嘗試了以下代碼:

  var t1;
  cy.get("h1").should(($d) => {
    t1 = $d.text();
    });
    cy.wait(600);
    cy.get("h1").should(($d) => {
        const t2 = $d.text();
        expect(t2).not.equal(t1);
    })

但是第一個變量(t1)總是一個空字符串“”,而第二個變量需要時間。 測試通過但原因錯誤(“”與“2021-11-09 10:52:33”不同)我如何才能第一次參加?

更新
我試圖只顯示第一個時間戳,它適用於以下代碼:

  cy.get("h1").should(($d) => {
    const t1 = $d.text();
    expect(t1).not.equal("");
    })

但我需要將它與第二個進行比較,而不是與空字符串進行比較。 我認為這是因為 Cypress 是異步的,但我不知道如何連接第二部分。

我為每個時間戳使用 var 而不是 const 解決了這個問題。 使用 var 它可以同時獲取時間戳並進行比較:

  var t1;
  var t2;
  cy.get("h1").should(($d) => {
    t1 = $d.text();
    expect(t1).not.equal("");
    })
    
    cy.wait(6000);
    cy.get("h1").should(($d) => {
        t2 = $d.text();
        expect(t2).not.equal(t1);
    })

它僅在我檢查與“”不同的第一個時間戳時才有效,我真的不知道為什么,但沒關系,因為通過這種方式我驗證了時間戳是否有效。 另外 6 秒是 6000 而不是 600 毫秒。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM