Heim  >  Fragen und Antworten  >  Hauptteil

Das Testen der Funktionalität der vorherigen und nächsten Schaltflächen in React schlägt fehl

<p>Mein React-Code besteht den Test nicht: Wenn ich es falsch geschrieben habe, können Sie mir helfen, es richtig zu schreiben? Ich habe versucht, screen.getByRole('button', {name: '>'}) zu verwenden, um die nächste Schaltfläche abzurufen, und screen.getByRole('button', {name: '<'}), um die vorherige Schaltfläche Even abzurufen Ich habe den unten genannten Testcode ausprobiert, aber der Test schlug immer wieder fehl. </p> <pre class="brush:php;toolbar:false;">Standardfunktion App() exportieren { zurückkehren ( <div className="App"> <div> {Hunde .map((Wert, Schlüssel) => ( <div className="card-container" key={key}> <div> <img className="img" src={value.imgUrl} alt={value.title} /> </div> <div className="card-footer"> {dogCurrPage !== 1 ? ( <button className="back-button" onClick={() => {"<"} </button> ) : Null} <span className="card-title-text">{value.title}</span> {dogCurrPage !== dogs.length - 1 ? ( <button className="next-button" onClick={() => {">"} </button> ) : Null}{" "} </div> </div> ))} </div> </div> ); }</pre> <pre class="brush:php;toolbar:false;">describe("App", () => { it("Den Klick auf die vorherige Schaltfläche ordnungsgemäß verarbeiten", () => { render(<App />); fireEvent.click(screen.getByText("<")); }); it("Behandeln Sie den Klick auf die Schaltfläche "Weiter" ordnungsgemäß", () => { render(<App />); fireEvent.click(screen.getByText(">")); }); });</pre>
P粉936509635P粉936509635403 Tage vor403

Antworte allen(1)Ich werde antworten

  • P粉648469285

    P粉6484692852023-08-16 00:46:15

    也许尝试这段代码:

    describe("App", () => {
      it("正确渲染应用程序", async() => {
        render( < App / > );
    
        // 根据您的UI组件添加更具体的断言
        expect(screen.getByText("Fetch Api, display 1 card, add comments and likes to those comments")).toBeInTheDocument();
      });
    
      it("正确处理上一个按钮的点击", async() => {
        render( < App / > );
    
        fireEvent.click(screen.getByRole("button", {
          name: "<"
        }));
        // 添加断言以检查点击上一个按钮后的行为
      });
    
      it("正确处理下一个按钮的点击", async() => {
        render( < App / > );
    
        fireEvent.click(screen.getByRole("button", {
          name: ">"
        }));
        // 添加断言以检查点击下一个按钮后的行为
      });
    });

    Antwort
    0
  • StornierenAntwort