Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

581
Visualizações
No se puede seleccionar el elemento en ciprés dentro de un marco

Logré iniciar sesión en un sistema de resultados de laboratorio, pero no puedo avanzar más. Mi intención a largo plazo es obtener resultados de laboratorio para incorporarlos localmente en un registro médico.

 const getIframeBody = () => { // get the iframe > document > body // and retry until the body element is not empty return cy .get('frame[id="EclairMainFrame"]') .its('0.contentDocument.body').should('not.be.empty') // wraps "body" DOM element to allow // chaining more Cypress commands, like ".find(...)" // https://on.cypress.io/wrap .then(cy.wrap) } describe('Medlab Test', () => { it('Visits Eclair', () => { cy.visit('https://cdr.medlabcentral.co.nz/Eclair/mvc') cy.get('.login-field').eq(0).type('userid') cy.get('.login-field').eq(1).type('passphrase{enter}') cy.location('pathname').should('eq', '/Eclair/ClinicalWorkstation.aspx') getIframeBody().find('.search-form-form-textbox') }) })

Esto me permite iniciar sesión, pero Cypress no puede encontrar el campo de entrada para ingresar la identificación del paciente. Veo el siguiente mensaje de error:

Se agotó el tiempo de reintento después de 6000 ms: se esperaba encontrar el elemento: .search-form-form-textbox, pero nunca lo encontró. Consultado desde el elemento: <cuerpo>

El DOM en este punto para ese campo de entrada muestra:

 <input class="search-form-form-textbox Mandatory" id="PatAliasId" name="PatAliasId" type="text" value="" tabindex="4">

ingrese la descripción de la imagen aquí

Probé cy.get en la clase cy.get('.search-form-form-textbox') , en el id cy.get('#PatAliasId') y en el atributo de clase cy.get('name=["PatAliasId"]') pero todos estos intentos tienen un tiempo de espera de 6 segundos.

¿Cuál es la sintaxis correcta para encontrar un elemento dom dentro de un marco?

about 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Para trabajar con marcos en Cypress, debe instalar un complemento de cypress con el siguiente comando, luego puede interactuar con los elementos dentro del marco

 npm install -D cypress-iframe

URL de referencia Cypress Frames

Si ya ha hecho lo anterior, cargue primero el marco para encontrar el elemento requerido

 cy.frameLoaded(#frameId) cy.iframe.find('#PatAliasId').type('abc')
about 4 years ago · Santiago Trujillo Relatório

0

En la versión anterior de cypress, no hay soporte para iFrame. Pero en la última versión, Cypress proporcionó soporte para iFrames.

Trabaje en cypress, necesitamos instalar cypress-iframe usando los siguientes comandos.

npm install -D ciprés-iframe

Use este código a continuación:

 describe('Medlab Test', () => { it('Visits Eclair', () => { cy.visit('https://cdr.medlabcentral.co.nz/Eclair/mvc') cy.frameLoaded('#frameId') cy.iframe.find('#PatAliasId').type('Enter Your Input') }) })
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda