Automating tests using the new ios-driver - ios-simulator

I’m trying to automate tests on an iphone simulator or device for a web application running in Safari. The documentation for IPhoneDriver says it is now deprecated and to use ios-driver or appium. The documentation for both these tools is lacking so has anyone else had experience using ios-driver to test a site running in Safari.
What I have tried so far is updating the MobileSafari Info.plist to allow ios-driver to edit it:
sudo chmod 666 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator*.sdk/Applications/MobileSafari.app/Info.plist
I then start up selenium-standalone 2.32 on port 3001 on the Mac. I then run the sample code provided on the ios-driver site:
public static void main(String[] args) throws Exception {
DesiredCapabilities safari = IOSCapabilities.iphone("Safari");
RemoteWebDriver driver = new RemoteWebDriver(new URL("http://localhost:3001/wd/hub"), safari);
driver.get("http://www.ebay.co.uk/");
System.out.println(driver.getTitle());
driver.quit();
}
I get unable to connect error. Am I supposed to install webdriver on the simulator/device as well which I think is how the IPhoneDriver works?
I am using OSX Mountain Lion with all up-to-date software.
Thanks

You need to start up ios-driver,
Launching ios-driver section here
http://ios-driver.github.io/ios-driver/?page=setup
If you want to connect to the grid you need to start up ios-driver and point it to your grid
http://ios-driver.github.io/ios-driver/?page=scaling

Related

Getting error can not access disposed object for builder.build() on visual studio update

I am getting error on debug session start on my dot net core API project; since I updated visual studio to latest version 17.1.1. Following is the exception detail, it is showing on console. I tried by deleting temp, bin, obj folders but nothing worked. Has somebody faced such an issue or know how to fix?
Unhandled exception. System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'ConfigurationManager'.
at Microsoft.Extensions.Configuration.ReferenceCountedProviderManager.AddProvider(IConfigurationProvider provider)
at Microsoft.Extensions.Configuration.ConfigurationManager.AddSource(IConfigurationSource source)
at Microsoft.Extensions.Configuration.ConfigurationManager.Microsoft.Extensions.Configuration.IConfigurationBuilder.Add(IConfigurationSource source)
at Microsoft.AspNetCore.Builder.WebApplicationBuilder.<>c__DisplayClass25_0.b__2(HostBuilderContext context, IServiceCollection services)
at Microsoft.Extensions.Hosting.HostBuilder.CreateServiceProvider()
at Microsoft.Extensions.Hosting.HostBuilder.Build()
at Microsoft.AspNetCore.Builder.WebApplicationBuilder.Build()
at Program.$(String[] args) in Program.cs:line 40
It is because you use the old way of getting the settings from the configuration manager, like:
using (var serviceProvider = services.BuildServiceProvider())
{
...
}
If you remove these lines and just use the configuration as-is with
options = configuration.GetOptions<Object>("xxx");
it will work
we also had this issue since march 8.
is was introduced with the release of 6.0.3, see a github post about the issue : https://github.com/dotnet/aspnetcore/issues/40614
for now what we did is revert to the 6.0.2 version (this is a temporary work around, i will hope to figure out what was wrong asap)
for docker images:
FROM mcr.microsoft.com/dotnet/aspnet:6.0.2 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
FROM mcr.microsoft.com/dotnet/sdk:6.0.200 AS build
WORKDIR /src
if you are using it in yml also probably
use dotnetversion
DotNetVersion: "6.0.200" instead of "6.0.x"
6.0.200 is the sdk version of 6.0.2 framework https://dotnet.microsoft.com/en-us/download/dotnet/6.0
11/03/2022
see also this https://github.com/dotnet/core/issues/7259 were i have pinpointed the issue in our code and added a sample app to reproduce
if we look into that repo https://github.com/microsoft/ApplicationInsights-Kubernetes/blob/69f44c6ec3fda26d76a01836b851402e3f8a02ad/src/ApplicationInsights.Kubernetes/Extensions/ApplicationInsightsExtensions.cs
we indeed find the same piece of code on the other answers
i faced to this problem when i update my SDK both in docker and my window 11
my sdk is : 6.0.3
but i cant understand why this problem is happend

how to enable Visor Command Line In Apache Ignite?

I have started Apache Ignite server via Maven Dependency trough eclipse,can anyone tell me how to monitor cache through visor command? How to enable it when setup Apache Ignite via Maven?
I think the most easy way is to download binary distributive and lunch Visor command line from "\bin" folder. Note, you need to download release that match to that you are using in your Maven based application.
The second way is to use ignite-visor-console module from Maven
And start Visor command line via: org.apache.ignite.visor.commands.VisorConsole object (it extends App). Note, Visor command line is written on Scala.
Sample code:
import org.apache.ignite.visor.commands.VisorConsole;
public class Test {
static public void main(String args[]) {
VisorConsole.main(args);
}
}
Also see Visor command line documentation.
And also give a try for Web Console, as Dmitriy suggested.

how to post and accept long text to ASP.net web api?

I am trying to figure out the parameters and class fields to post and accept "build notes"(example text below) info,I am trying to design my controller as follows?would the following work for accepting a long text?
Controller:
public IEnumerable<class name> GetBuildNotes([FromBody] Buildnotes buildNotes>)
{
...........
........
}
Buildnotes class:
public class buildnotes
{
public string build_notes. --> this goes to a database column build_notes of type longtext
.....
}
Long text:
CHECKOUT POINT
cld3 - 1855314
cmn - 1855287
Known issue
[testsuite: STA_5G_VHT]: COMDEBUG-276224: consistent crash : APPS Crash - Kernel BUG at ffffff82dc55994c [PC at reg_todo+0x1dc/0x260] [LR at reg_todo]
if you observe build loading issue.please use fastboot.exe path : \\\8998_adb_drivers
Latest META only supported on BIN1 MTP. With BINA sometimes its works. but observed random boot-up crash
BIN B MTP doesn't boot up with latest target meta
Expected behavior :Bootloader UI updated with Boot verify feature in UEFI where the signing of the images is verified.
You can use below script to determine the Bin / Sub BIN type and IDDq leakage values thru adb.
Bring up device in adb mode
Source : \\location\team\LA\8998_hw_type\FinalScript
Usage : python bining.py
Please run "adb disable-verity" to avoid "adb remount/push" related issue
Sl4a/ PMC/ Acts/ Comms:Google_testing
$[apps_crm]\source\google_testing
WAPI build
CCX build location
e
HOT FIX
HW used for BIT sanity
Recommendation to use MPT with chipname 2.0 card. please replace chipname card on MTP having MCN ends with 001/003/005
CDT programming forV2 HW
http://qwiki.company.com/qct-drvsw/8998
Pre-built wiki
http://qwiki.company.com/com_wCOM/com-CBI/Build_With_External_AU#BUILDING_DRIVER_POINTING_TO_APPS_CRM
http://qwiki.company.com/com_wCOM/com-CBI/Build_With_External_AU#Build_ROME_and_chip_for_SP_:_com1234.LA.0.1
Build loading procedure
Load BIT (CI) Meta
ENGG WLAN FW load on top of BIT META
adb root
adb remount
adb shell mount -o rw,remount /firmware
adb push wlanmdsp.mbn /firmware/image
adb reboot
ENGG BT FW load on top of BIT META
adb root
adb remount
adb shell mount -o rw,remount /bt_firmware
adb push * /bt_firmware/image
adb reboot
Yes you can, I'm guessing you just need to ensure that the object you're passing from your client application matches your Buildnotes class structure.
Try this:
How to pass json POST data to Web API method as object

When i used webdriver sampler in jmeter for this code,i got blank window

When i used webdriver sampler in jmeter for this code,i got blank window,Please give me the solution
var pkg = JavaImporter(org.openqa.selenium)
var support_ui = JavaImporter(org.openqa.selenium.support.ui.WebDriverWait)
var wait = new support_ui.WebDriverWait(WDS.browser, 5000)
WDS.sampleResult.sampleStart()
WDS.browser.get('http://duckduckgo.com')
var searchField = WDS.browser.findElement(pkg.By.id('search_form_input_homepage'))
searchField.click()
searchField.sendKeys(['blazemeter'])
var button = WDS.browser.findElement(pkg.By.id('search_button_homepage'))
button.click()
var link = WDS.browser.findElement(pkg.By.ByCssSelector('#r1-0 > div.links_main > h2 > a.large > b'))
link.click()
WDS.log.info(WDS.name + ' has logged an entry');
WDS.sampleResult.sampleEnd()
If you experience any problems with JMeter the first place to look for the cause is jmeter.log file which usually lives under /bin folder of your JMeter installation.
The most frequent problem is Firefox and Selenium libraries mismatch as Firefox is being updated more frequently and Selenium support is few versions behind.
In order to determine supported version:
Determine underlying Selenium version by looking for "selenium-*" files under /lib folder of your JMeter installation. For instance latest WebDriver plugins come with Selenium 2.46.0
Look into Selenium Java changelog and see supported Firefox version.
Download supported Firefox version from Mozilla FTP website and install it somewhere.
Edit system.properties file (lives under /bin folder of your JMeter installation) and add the following line there:
webdriver.firefox.bin=/path/to/firefox/executable
Restart JMeter - everything should be working fine.
See The WebDriver Sampler: Your Top 10 Questions Answered guide for more WebDriver Sampler tips and tricks

Cordova CLI 5.0.0 - JavaScript error BlankCordovaApp

I am using the JavaScript Blank Apache Cordova App. Changes were made to the config.xml only.
I changed the Cordova CLI in config.xml from 4.3.0 to 5.0.0. NPM downloaded the files, and no errors were reported.
When I F5 Debug > Android > Ripple. I get the following:
"Exception occurred". Uncaught Error: cordova already defined
This error does not appear when running 4.3.0. Any thoughts on why is would happen in 5.0.0?
Unfortunately this is a known issue with Ripple and the Android implementation in Cordova 5.0.0. The next point release will resolve it as the fix has been merged.
See the following dev mailing list thread on Cordova for details if you are interested: http://callback.markmail.org/message/so6xavs6xdfn45zv?q=+list:org%2Eapache%2Eincubator%2Ecallback-dev+Ripple
UPDATE: Cordova 5.1.1 is out and resolves this problem along with an Android security issue.
A bit late, but this usually works for me. For testing purposes (not only this case, but most of errors that sometimes occur in ripple) I always give it a first try, just like:
---->line 104 on cordova.js (which you can find inside platform www)
replace
if ("cordova" in window) { throw new Error("cordova already defined"); };
With:
if ("cordova" in window) {
//check if emulation
if(window.location.href.indexOf('localhost:4400') < 0){
//if not emulating, throw error
throw new Error("cordova already defined");
}
};
If it doesn't work, then I start googling about the issue.
hope this helps somebody to save some time.

Resources