Geral
Gerência e Qualidade de Software
Semana 3
0

Questão

Durante a automação de testes com o Selenium IDE, a equipe de qualidade precisou validar a funcionalidade de finalização de pedidos em uma aplicação web. Em alguns momentos, perceberam que determinados botões interativos demoravam a ficar disponíveis após o carregamento da página, o que resultava em falhas na execução do teste gravado. Diante disso, a equipe considerou algumas abordagens para tornar a automação mais estável.
Com base neste cenário e no uso do Selenium IDE, avalie as afirmativas a seguir:
I. Inserir comandos de espera explícita no script, como waitForElementPresent, pode ajudar a garantir que o elemento esteja disponível antes da tentativa de interação.
II. A execução sequencial dos comandos no Selenium IDE depende da presença e visibilidade dos elementos na interface, o que exige planejamento em páginas com carregamento dinâmico.
III. O Selenium IDE permite usar scripts Java personalizados para contornar limitações de interação com elementos que não estejam visíveis ou prontos.
IV. O uso de comandos de espera fixos, como pause, deve ser evitado sempre que possível, pois torna os testes menos flexíveis e mais sujeitos a falhas.
Está correto o que se afirma em:
A)

I e III, apenas.

B)

I, II, III e IV.

C)

I, III e IV, apenas.

D)

II, III e IV, apenas.

E)

I, II e IV, apenas.

function vote(questaoId, value) { window.location.href = "/accounts/login/?next=/questao/712/"; return; fetch(`/vote/questao/${questaoId}/`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-CSRFToken': 'SOUdkX2ggCXGbpetSkOJ6dXDl9vsL9sOME7vzw1Q77BD4MwNZ4u0X61UFgDhLbQI' }, body: JSON.stringify({ value: value }) }) .then(response => response.json()) .then(data => { if (data.success) { document.getElementById(`score-${questaoId}`).textContent = data.score; const upBtn = document.querySelector(`button[onclick="vote(${questaoId}, 1)"]`); const downBtn = document.querySelector(`button[onclick="vote(${questaoId}, -1)"]`); upBtn.classList.remove('active-up'); downBtn.classList.remove('active-down'); if (data.user_vote === 1) upBtn.classList.add('active-up'); if (data.user_vote === -1) downBtn.classList.add('active-down'); } }); }