94 lines
2.5 KiB
JavaScript
94 lines
2.5 KiB
JavaScript
/// <reference types="Cypress" />
|
|
|
|
context("Misc", () => {
|
|
beforeEach(() => {
|
|
cy.visit("https://example.cypress.io/commands/misc");
|
|
});
|
|
|
|
it(".end() - end the command chain", () => {
|
|
// https://on.cypress.io/end
|
|
|
|
// cy.end is useful when you want to end a chain of commands
|
|
// and force Cypress to re-query from the root element
|
|
cy.get(".misc-table").within(() => {
|
|
// ends the current chain and yields null
|
|
cy.contains("Cheryl")
|
|
.click()
|
|
.end();
|
|
|
|
// queries the entire table again
|
|
cy.contains("Charles").click();
|
|
});
|
|
});
|
|
|
|
it("cy.exec() - execute a system command", () => {
|
|
// https://on.cypress.io/exec
|
|
|
|
// execute a system command.
|
|
// so you can take actions necessary for
|
|
// your test outside the scope of Cypress.
|
|
cy.exec("echo Jane Lane")
|
|
.its("stdout")
|
|
.should("contain", "Jane Lane");
|
|
|
|
// we can use Cypress.platform string to
|
|
// select appropriate command
|
|
// https://on.cypress/io/platform
|
|
cy.log(`Platform ${Cypress.platform} architecture ${Cypress.arch}`);
|
|
|
|
if (Cypress.platform === "win32") {
|
|
cy.exec("print cypress.json")
|
|
.its("stderr")
|
|
.should("be.empty");
|
|
} else {
|
|
cy.exec("cat cypress.json")
|
|
.its("stderr")
|
|
.should("be.empty");
|
|
|
|
cy.exec("pwd")
|
|
.its("code")
|
|
.should("eq", 0);
|
|
}
|
|
});
|
|
|
|
it("cy.focused() - get the DOM element that has focus", () => {
|
|
// https://on.cypress.io/focused
|
|
cy.get(".misc-form")
|
|
.find("#name")
|
|
.click();
|
|
cy.focused().should("have.id", "name");
|
|
|
|
cy.get(".misc-form")
|
|
.find("#description")
|
|
.click();
|
|
cy.focused().should("have.id", "description");
|
|
});
|
|
|
|
context("Cypress.Screenshot", function() {
|
|
it("cy.screenshot() - take a screenshot", () => {
|
|
// https://on.cypress.io/screenshot
|
|
cy.screenshot("my-image");
|
|
});
|
|
|
|
it("Cypress.Screenshot.defaults() - change default config of screenshots", function() {
|
|
Cypress.Screenshot.defaults({
|
|
blackout: [".foo"],
|
|
capture: "viewport",
|
|
clip: { x: 0, y: 0, width: 200, height: 200 },
|
|
scale: false,
|
|
disableTimersAndAnimations: true,
|
|
screenshotOnRunFailure: true,
|
|
beforeScreenshot() {},
|
|
afterScreenshot() {},
|
|
});
|
|
});
|
|
});
|
|
|
|
it("cy.wrap() - wrap an object", () => {
|
|
// https://on.cypress.io/wrap
|
|
cy.wrap({ foo: "bar" })
|
|
.should("have.property", "foo")
|
|
.and("include", "bar");
|
|
});
|
|
});
|