javascript - შეცვალეთ დირექტორია Cypress-ში cy.exec() გამოყენებით


ციპრისთან მუშაობა, რათა გაუშვა სხვა საქაღალდის Python სკრიპტი. მაგრამ მგონია, რომ დირექტორია სრულად არასდროს იცვლება.

gotoPythonProject() {
 cy.exec("cd /Users/**/Desktop/project/");
 cy.exec("ls"); // which does not reflect the files of project that's been changed
 cy.reload();
}

პასუხი #1

როგორც ბევრ CI ხელსაწყოში, ეს ნორმალური ქცევაა, რომ თითოეული ბრძანება იწყება ახალ სფერზე. ამ გზით, ერთი ბრძანება არ ახდენს გავლენას წინა ბრძანების მდგომარებაზე.

ამ შემთხვევისთვის არსებობს ორი პრაქტიკული გამოსავალი:

  1. შეაერთეთ თქვენი ბრძანებები &&-ის გამოყენებით. მაგალითად:
cy.exec("cd .. && pwd");
  1. დაურეკეთ bash სკრიპტს. მაგალითად: cy.exec("test_me.sh");, თქვენი bash სკრიპტი შემდეგ გამოიყურებოდეს რაღაც მსგავსად:
#!/bin/bash
cd ..
pwd