def formateo_de_tiempos(objeto_json): for i in range(3): objeto_json['steps'][i]['time'] = FormatUtils.truncar_float_cadena(objeto_json['steps'][i]['time']) objeto_json['time'] = FormatUtils.truncar_float_cadena(objeto_json['time']) return objeto_json
def obtener_carpetas_en_sesion(driver): lista_de_carpetas_localizadas = [] lista_nombres_de_carpetas_formateadas = [] clase_css_carpeta_owa_2016 = "_n_C4" clase_css_carpeta_owa_2013 = '_n_Z6' xpath_carpeta_owa_2010 = "//a[@name='lnkFldr']" se_encontraron_carpetas = False tiempo_de_inicio = Temporizador.obtener_tiempo_timer() tiempo_de_finalizacion = 0 while tiempo_de_finalizacion < 60: time.sleep(10) if SeleniumTesting.verificar_elemento_encontrado_por_clase_js( driver, clase_css_carpeta_owa_2016): SeleniumTesting.owa_descubierto = 2016 se_encontraron_carpetas = True elif SeleniumTesting.verificar_elemento_encontrado_por_clase_js( driver, clase_css_carpeta_owa_2013): SeleniumTesting.owa_descubierto = 2013 se_encontraron_carpetas = True elif SeleniumTesting.verificar_elemento_encontrado_por_xpath( driver, xpath_carpeta_owa_2010): SeleniumTesting.owa_descubierto = 2010 se_encontraron_carpetas = True tiempo_de_finalizacion = Temporizador.obtener_tiempo_timer( ) - tiempo_de_inicio if tiempo_de_finalizacion % 20 == 0: SeleniumTesting.navegar_a_sitio( SeleniumTesting.url_owa_exchange) driver.refresh() if se_encontraron_carpetas: SeleniumTesting.log.info('Se localizan con exito las carpetas dentro de la plataforma OWA, en un lapso aproximado'\ ' de {} seg'.format(FormatUtils.truncar_float_cadena(tiempo_de_finalizacion))) break else: SeleniumTesting.log.info( 'Fue imposible localizar las carpetas dentro de la plataforma OWA, se intentara nuevamente' ) SeleniumTesting.log.info( 'Titulo actual de la plataforma: {}'.format(driver.title)) SeleniumTesting.log.info( 'URL actual de la plataforma: {}'.format( driver.current_url)) if se_encontraron_carpetas == False: tiempo_de_finalizacion = Temporizador.obtener_tiempo_timer( ) - tiempo_de_inicio SeleniumTesting.log.error('Han transcurrido mas de {} seg sin localizar'\ ' las carpetas dentro de la plataforma OWA'.format(FormatUtils.truncar_float_cadena(tiempo_de_finalizacion))) SeleniumTesting.log.error( 'Title actual de la plataforma: {}'.format(driver.title)) SeleniumTesting.log.error('Url actual de la plataforma: {}'.format( driver.current_url)) else: SeleniumTesting.log.info( 'Plataforma OWA version {} identificada'.format( SeleniumTesting.owa_descubierto)) time.sleep(4) if SeleniumTesting.owa_descubierto == 2010: lista_de_carpetas_localizadas = driver.find_elements_by_xpath( xpath_carpeta_owa_2010) elif SeleniumTesting.owa_descubierto == 2013: script_js = ''' var elementos = document.getElementsByClassName('_n_Z6'); return elementos; ''' lista_de_carpetas_localizadas = driver.execute_script( script_js) elif SeleniumTesting.owa_descubierto == 2016: script_js = ''' var elementos = document.getElementsByClassName('_n_C4'); return elementos; ''' lista_de_carpetas_localizadas = driver.execute_script( script_js) for carpeta in lista_de_carpetas_localizadas: if SeleniumTesting.owa_descubierto == 2010: nombre_de_carpeta = carpeta.text else: nombre_de_carpeta = FormatUtils.remover_backspaces( carpeta.get_attribute('innerHTML')) SeleniumTesting.log.info( 'Se obtiene la carpeta: {}'.format(nombre_de_carpeta)) lista_nombres_de_carpetas_formateadas.append(nombre_de_carpeta) return lista_nombres_de_carpetas_formateadas