最新IE版本中的警报处理失败

时间:2017-04-07 13:40:16

标签: selenium internet-explorer selenium-webdriver selenium-iedriver

  

操作系统:Windows 10企业版

     

Selenium版本:3.3.1

     

浏览器:Internet Explorer 11

     

浏览器版本:11.953.14393.0

我在过去3个月里运行相同的测试脚本。上周突然间它开始无法验证警报文本。我现在可以找到的一个区别是,如果在短时间内显示相同的警报,则会出现带复选框的警告。警告消息不要让此页面创建更多消息

from __future__ import print_function
import tensorflow as tf
import numpy as np


def add_layer(inputs, in_size, out_size, n_layer,     activation_function=None):
# add one more layer and return the output of this layer
layer_name = 'layer%s' % n_layer
with tf.name_scope(layer_name):
    with tf.name_scope('weights'):
        Weights = tf.Variable(tf.random_normal([in_size, out_size]), name='W')
        tf.summary.histogram(layer_name + '/weights', Weights)
    with tf.name_scope('biases'):
        biases = tf.Variable(tf.zeros([1, out_size]) + 0.1, name='b')
        tf.summary.histogram(layer_name + '/biases', biases)
    with tf.name_scope('Wx_plus_b'):
        Wx_plus_b = tf.add(tf.matmul(inputs, Weights), biases)
    if activation_function is None:
        outputs = Wx_plus_b
    else:
        outputs = activation_function(Wx_plus_b, )
    tf.summary.histogram(layer_name + '/outputs', outputs)
return outputs


# Make up some real data
x_data = np.linspace(-1, 1, 300)[:, np.newaxis]
noise = np.random.normal(0, 0.05, x_data.shape)
y_data = np.square(x_data) - 0.5 + noise

# define placeholder for inputs to network
with tf.name_scope('inputs'):
    xs = tf.placeholder(tf.float32, [None, 1], name='x_input')
    ys = tf.placeholder(tf.float32, [None, 1], name='y_input')

# add hidden layer
l1 = add_layer(xs, 1, 10, n_layer=1, activation_function=tf.nn.relu)
# add output layer
prediction = add_layer(l1, 10, 1, n_layer=2, activation_function=None)

# the error between prediciton and real data
with tf.name_scope('loss'):
    loss = tf.reduce_mean(tf.reduce_sum(tf.square(ys - prediction),
                                    reduction_indices=[1]))
    tf.summary.scalar('loss', loss)

with tf.name_scope('train'):
     train_step = tf.train.GradientDescentOptimizer(0.1).minimize(loss)

sess = tf.Session()
merged = tf.summary.merge_all()

writer = tf.summary.FileWriter("logs/", sess.graph)

init = tf.global_variables_initializer()
sess.run(init)

for i in range(1000):
    sess.run(train_step, feed_dict={xs: x_data, ys: y_data})
    if i % 50 == 0:
        result = sess.run(merged,
                      feed_dict={xs: x_data, ys: y_data})
        writer.add_summary(result, i)

tensorboard --logdir=/logs 应该返回文字。

有没有办法在IE11中禁用此警告消息?如果不是,我怎么能在Selenium Webdriver中处理这个问题。?

2 个答案:

答案 0 :(得分:0)

以下是在Selenium中处理警报的链接。

Link to help

要指明您的特定代码,请查看文章代码中的第41到53行。

希望这有帮助。

答案 1 :(得分:0)

你现在遇到的问题是提醒的时间很短,你可以通过检查alert is present or not来处理。

尝试使用此代码可能有所帮助。

WebDriverWait wait = new WebDriverWait(driver, 10);
        try {
            wait.until(ExpectedConditions.alertIsPresent());
            driver.switchTo().alert().accept();
        } catch (Exception e) {
            throw e;
        }

让我知道它是否有效。