Я пишу на C#. Пользуюсь Webdriver, но в некоторых методах испльзую и первый селениум ()
Спасибо за ответ и за ссылку. К сожалению она, как и многие другие, рассказывает как проверить или зассетить значения свойств.
Раньше я мог вызвать SendKeys на input text field с локальным адресом файла и этого было достаточно. Сейчас input text field стало несколько (хотя фактически видно только одно).
Вызов SendKeys на видимые input ни к чему не приводят.
Если есть идея как загрузить файл в таком случае, буду рад услышать.
Вот html(это все для одного input text field, клик по каоторому открывает поиск файла на компьютере):
<table>
<tr>
<td align="left" style="white-space:normal;border-right-width:0px;" class="Top dxgv">
...
<br />Загрузить файл:
<input type="hidden" value="1" name="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_IC"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_IC" style="background-color: rgb(255, 255, 255);" />
<script type="text/javascript" src="/DXR.axd?r=1_81-bEap5" id="dxis_580467879"></script>
<table cellspacing="0" cellpadding="0" border="0" style="border-collapse: collapse; width: 231px;"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171" class="dxucControl_Aqua">
<tbody>
<tr>
<td style="width:100%;vertical-align:top;">
<table cellspacing="0" cellpadding="0" border="0" style="width:100%;border-collapse:collapse;"
class="dxucInputs_Aqua" id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_UploadInputs">
<tbody>
<tr style="display:none;">
<td align="left" style="width:100%;border-right-width:0px;" class="dxucTextBox_Aqua"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_TextBoxT">
<input type="file" style="position:absolute;filter:alpha(opacity=0);opacity:0;top:-5000px;"
name="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_TextBoxT_Input"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_TextBoxT_Input" />
<input type="text" style="background-color:Transparent;border-width:0px;" tabindex="-1" readonly="readonly"
class="dxucEditArea_Aqua"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_TextBoxT_FakeInput" />
</td>
<td style="border-left-width:0px;" class="dxCB dxucTextBox_Aqua"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_ClearBoxT">
<a style="visibility:hidden;" href="javascript:;"
onclick="aspxUClearFileInputClick('ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171',T)">
<img style="display:inline;text-decoration:none;" alt="Очистить список выбранных файлов"
src="/DXR.axd?r=1_5-bEap5" class="dxWeb_ucClearButton_Aqua" title="Очистить список выбранных файлов"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_ClearBoxTImg" />
</a>
</td>
<td class="dxBB dxucBrowseButton_Aqua"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_BrowseT">
<a href="javascript:;" tabindex="-1">Обзор...</a>
</td>
</tr>
<tr style="display:none;" id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_ErrRRT">
<td colspan="3" class="dxucErrorCell_Aqua"></td>
</tr>
<tr style="display:none;">
<td style="height:2px;" colspan="3">
<div style="height:2px;width:1px;overflow:hidden;"></div>
</td>
</tr>
<tr>
<td align="left" style="width:100%;border-right-width:0px;" class="dxucTextBox_Aqua"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_TextBox0">
<input type="file" style="position: absolute; opacity: 0; top: -5000px; left: 217px;"
name="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_TextBox0_Input"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_TextBox0_Input"
class=" ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_dxFITextBoxHover" />
<input type="text" style="background-color:Transparent;border-width:0px;" tabindex="-1" readonly="readonly"
class="dxucEditArea_Aqua"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_TextBox0_FakeInput" /></td>
<td style="border-left-width:0px;" class="dxCB dxucTextBox_Aqua"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_ClearBox0">
<a style="visibility:hidden;" href="javascript:;"
onclick="aspxUClearFileInputClick('ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171',0)">
<img style="display:inline;text-decoration:none;" alt="Очистить список выбранных файлов"
src="/DXR.axd?r=1_5-bEap5" class="dxWeb_ucClearButton_Aqua" title="Очистить список выбранных файлов"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_ClearBox0Img" />
</a> <
/td></td>
<td class="dxBB dxucBrowseButton_Aqua"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_Browse0">
<a href="javascript:;" tabindex="-1">Обзор...</a>
</td>
</tr>
<tr style="display:none;" id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_ErrR0">
<td colspan="3" class="dxucErrorCell_Aqua"></td>
</tr>
</tbody>
</table>
<div style="padding-top:13px;display:none;" class="dxucErrorCell_Aqua"
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_CErr">Common error text is displayed here</div>
</td>
</tr>
</tbody>
</table>
<iframe scrolling="no" frameborder="0"
style="position:absolute;display:none;z-index:100000;filter:progid:DXImageTransform.Microsoft.Alpha(Style=0, Opacity=0);"
name="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_UploadIframe" src=""
id="ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171_UploadIframe"></iframe>
<script type="text/javascript" id="dxss_1650467547">
&lt;!--
aspxAddHoverItems('ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171',[[['dxucBrowseButtonHover_Aqua'],[''],['Browse0'],,[['']],['Img']]]);
aspxAddPressedItems('ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171',[[['dxucBrowseButtonPressed_Aqua'],[''],['Browse0'],,[['']],['Img']]]);
aspxAddDisabledItems('ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171',[[['dxucDisabled_Aqua
dxucButtonDisabled_Aqua'],[''],['Add','Upload','Cancel','Remove0'],,[[''],[''],[''],['']],['Img']],[['dxucDisabled_Aqua
dxucTextBoxDisabled_Aqua'],[''],['TextBox0'],['','_FakeInput']],[['dxucDisabled_Aqua
dxucTextBoxDisabled_Aqua'],[''],['ClearBox0'],,[[{'spriteCssClass':'dxWeb_ucClearButtonDisabled_Aqua'}]],['Img']],[['dxucDisabled_Aqua
dxucBrowseButtonDisabled_Aqua'],[''],['Browse0'],,[['']],['Img']]]);
var dxo = new ASPxClientUploadControl('ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171');
window['ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171'] = dxo;
dxo.uniqueID = 'ctl00$BodyPlace$TemplatesGridView$PriceUploadControl_1427171';
dxo.FileUploadComplete.AddHandler(function (s, e) { if (e.isValid) { alert('Файл загружен и будет обработан в ближайшее
время'); } else { alert(e.errorText); } TemplatesGridView.Refresh(); });
dxo.TextChanged.AddHandler(function(s, e) { s.Upload(); });
dxo.fileInputSpacing = '2px';
dxo.generalErrorText = 'Ошибка загрузки';
dxo.unspecifiedErrorText = 'На сервере возникла внутренняя неизвестная ошибка, которая не позволяет выполнить запрос.';
dxo.uploadWasCanceledErrorText = 'Загрузка файла была отменена.';
dxo.invalidWindowsPathErrorText = 'Файловый путь "{0}" не является путем Windows.';
dxo.selectedSeveralFilesText = 'Для загрузки выбрано файлов: {0}';
dxo.progressHandlerPage = '/ASPxUploadProgressHandlerPage.ashx';
dxo.uploadingKey = 'c7eef016-43e0-4950-b5be-561ed1b10c38';
dxo.templateDisabledTextBoxItem =
({'element':'TextBoxT','postfixes':['','_FakeInput'],'imageUrls':[''],'imagePostfixes':[''],'className':['dxucDisabled_Aqua
dxucTextBoxDisabled_Aqua'],'cssText':[''],'name':'ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171'});
dxo.templateDisabledClearBoxItem =
({'element':'ClearBoxT','postfixes':[''],'imagePostfixes':['Img'],'className':['dxucDisabled_Aqua
dxucTextBoxDisabled_Aqua'],'cssText':[''],'name':'ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171','imageObjs':[{'spriteCssClass':'dxWeb_ucClearButtonDisabled_Aqua'}]});
dxo.templateHoveredBrowseItem =
({'element':'BrowseT','postfixes':[''],'imagePostfixes':['Img'],'className':['dxucBrowseButtonHover_Aqua'],'cssText':[''],'name':'ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171','imageObjs':['']});
dxo.templatePressedBrowseItem =
({'element':'BrowseT','postfixes':[''],'imagePostfixes':['Img'],'className':['dxucBrowseButtonPressed_Aqua'],'cssText':[''],'name':'ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171','imageObjs':['']});
dxo.templateDisabledBrowseItem =
({'element':'BrowseT','postfixes':[''],'imagePostfixes':['Img'],'className':['dxucDisabled_Aqua
dxucBrowseButtonDisabled_Aqua'],'cssText':[''],'name':'ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171','imageObjs':['']});
dxo.templateDisabledRemoveItem =
({'element':'RemoveT','postfixes':[''],'imagePostfixes':['Img'],'className':['dxucDisabled_Aqua
dxucButtonDisabled_Aqua'],'cssText':[''],'name':'ctl00_BodyPlace_TemplatesGridView_PriceUploadControl_1427171','imageObjs':['']});
dxo.InlineInitialize();
//--&gt;
</script></td>
</tr>
</table>