Estoy tratando de escribir algunas pruebas usando WDIO pero me tropiezo con el siguiente problema. Realmente no entiendo cómo hacer clic () tipo de entrada = radio. Aquí cómo se ve en DOM 
Así que necesito hacer clic en el correcto. Lo encontré con $([id="all"]) y después de esperar hasta que se muestre use el método click() y no pasa nada. Apreciaré cualquier ayuda
Sin ver el código real que está utilizando, lo mejor que podemos hacer es suponer que tal vez el selector que está utilizando necesita ser ajustado. Por ejemplo, el método $ en WebdriverIO toma un selector como una cadena, por lo que $('[id="all"]').click() debería funcionar, ya que el selector está entre comillas simples con el valor del atributo entre comillas dobles. cotizaciones.
Además, puede ser más fácil simplemente usar el símbolo hash para los atributos de identificación:
$('#all').click();
Una buena manera de depurar cosas como esta es usar REPL. Con REPL, puede navegar manualmente a la página con sus botones de radio y luego ejecutar comandos arbitrarios de WebdriverIO desde la terminal para probarlos. Suponiendo que funcionen, entonces el problema debe ser algo con sus esperas.
Además, verifique que el elemento con id="all" sea único. Si hay varios elementos en la página con id="todos", eso estaría violando la especificación HTML, ya que los valores de los atributos de identificación deben ser únicos en una sola página.
Para usar REPL, ejecute el siguiente comando:
$ npx wdio repl chrome
Esto abrirá un navegador, que puede controlar manualmente, así como ejecutando comandos WebdriverIO desde la terminal.
Por lo que ha mencionado en los comentarios, debe seleccionar un elemento que esté dentro de un ShadowDOM. WebdriverIO tiene una API para esto, que se parece a esto:
$(selector).shadow$(selector);El primer selector apuntará al elemento que contiene shadowRoot, y el segundo selector es para el elemento del botón de opción de entrada. Por ejemplo, digamos que este es su HTML:
<some-custom-element> #shadow-root <header> <h1> <input type="radio" id="all">Para acceder y hacer clic en el botón de radio, usaríamos el siguiente código WebdriverIO:
$('some-custom-element').shadow$('input#all');Tus esperas funcionarían igual. Si estamos esperando que aparezca algo en el DOM oculto, como el encabezado, haríamos esto:
$('some-custom-element').shadow$('header').waitForDisplayed();Aunque los ejemplos anteriores usan selectores de elementos, también podemos seleccionar los elementos con id, clases u otros atributos.