How to test app on Edge on Mac OS or Linux - microsoft-edge

I am on Mac OS and Linux and want to test my app on Edge. I know I can use Browserstack, but it's a paid service. Any other ways that I can test on Edge for Free?

If you are on Mac or Linux, you can use the following tools to test Edge for free:
Virtual Machines
https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/
You can get the virtual machines image to test Edge as well as IE6 to IE11 on all platforms Mac, Linux and Windows. You do need to have either Virtual Box, VMware or Vagrant to install the VM image.
RemoteIE
https://dev.windows.com/en-us/microsoft-edge/tools/remote/
If you don't want to install VM image, try RemoteIE. The Remote client app is a small utility program that allows you to access Microsoft apps from the cloud. When you launch Internet Explorer from the Remote client app, a real preview version of the browser opens into a new window on your operating system, much like any other app you might have running. This version of Internet Explorer is modified to host the latest preview version of the EdgeHTML rendering engine, so you can test how your site will render in Microsoft Edge. It is available for Mac OS X, iOS, Android and Windows OS devices, and includes simple installation and account set up steps.

Yes, using virtual machines. Microsoft provides VMs in a number of formats for exactly this reason.
You can download them here

Related

How can I use a USB/COM port inside of a VSCode development container?

From inside of a development container for VSCode (Debian Linux) I'd like to use a COM port for communication via an USB device connnected to the Windows host machine (via WSL2). How can I make the COM port available insie of the container?
EDIT:
For WSL2 there is no official support yet.
As of right now WSL 2 does not include serial support, or USB device support.
A corresponding feature request is tracked on GitHub.
July 2021: As of right now WSL 2 does not include serial support, or USB device support.
Update November 2021: the same FAQ states:
Skanda Hazarika reports:
You can now connect USB devices in Windows Subsystem for Linux under Windows 11
If you’re an active user of Windows Subsystem for Linux and want to access USB devices right from the Linux instance running under WSL, then you’ll be happy to know that there has been a significant progress in this front.
Thanks to Microsoft’s contributions to the open-source dorssel/usbipd-win project, you can now enjoy USB passthrough access in WSL.
It means end users can perform tasks like flashing Android devices under Windows Subsystem for Linux, which are otherwise not supported by the Linux subsystem.
The usbipd-win project is all about creating a solution for sharing locally connected USB devices to other machines, including Hyper-V guests and WSL2. However, the official WSL2 Linux kernel used to lack support for the USB/IP protocol, requiring users to build the kernel themselves.
Since WSL kernel version 5.10.60.1, the required parameters are configured out of the box, so no manual recompilation is needed.
Microsoft has also contributed a command line interface to the project to both enable a USB device for sharing on Windows and seamlessly attach it from within WSL.
So if you have:
migrated/upgraded to Windows 11
applied all WSL updates (through the Windows Store)
Then, your VSCode should be able to access mounted USB drives through WSL.

Do I need Windows 10 Pro to run Docker? Error: Hardware assisted virtualization and data execution protection must be enabled in the BIOS

I just installed Docker after upgrading my Windows 10 Home x64 to the version 2004 with the OS build 19041.264 (I needed to upgrade because Docker required me to have an OS buld >19018). Now if I want to launch docker I get this error Hardware assisted virtualization and data execution protection must be enabled in the BIOS. I have already read this (it is old) question, but because they let me install docker on my windows 10 home I assume that I can somehow run it without hyper-v, cuz I can't download it.
The Hyper-V role cannot be installed on Windows 10 Home. Hyper-V is used to run Linux kernel on Windows.
https://learn.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v
The alternative solution is you can use Virtual box instead of Microsoft native Hyper-V. Docker toolbox comes with Virtual box. You can get details installation steps from below link.
https://docs.docker.com/toolbox/toolbox_install_windows/
You will need Windows 10 Pro to run docker. Home edition is not useful for the purpose.

App store not connecting on Mac through Vmware virtual machine?

I setup mac OS X 10.7 on my window-7 machine through Vmware workstation version 11.1.2 and it's running good. I want to download and setup XCode for coding but i am unable to connect app store. It is not even sign in me. I tried all solution given in this apple link. Please anyone give me any solution. One more thing i also tried to login on apple developer site through my existing apple id but after i click on sign in it's not showing the next screen after login.
Note: This solution is specifically unix based systems.
Check the serial number in about us in VM. If it is not there or it is 0. Then below solution will definitely fix your problem.
VirtualBox does not by default make a serial number available to OS X guests. Of course OS X runs just fine inside VirtualBox running on a Mac even in that case. But due to the serial number being “0” the App Store and Server applications will not work.
The solution is to determine the serial number of the real Mac by opening About This Mac or running System Information. It is an alphanumeric string. On my Mac Pro 5,1 it begins with a letter and is 11 characters long.
In Terminal run the following command substituting the name of your VirtualBox virtual machine and your serial number (all one line):
VBoxManage setextradata “<your-vm-name>” VBoxInternal/Devices/efi/0/Config/DmiSystemSerial “<your-serial-number>“
Make sure you remove the quotes while entering the above command.
Starting up the machine after this change will then present a serial number that matches the base system and applications will function correctly.
This was tested on a Mac Pro 5,1 running 10.10.5 with VirtualBox 5.0.14. The guest was 10.11.3.
I'm using VMware Fusion 8, Mac Mojave both host and guest. App store was loading web content correctly on host but nothing on guest (Cannot connect to App Store).
I fixed it by shutting down the guest, go to Fusion > Virtual Machine > Settings > Advanced > check the "Pass power status to VM" checkbox, Start the guest again, retry the App Store connection, and it successfully loads web content.
Apparently Apple's fog up a mirror test is whether or not the macbook has a battery or power.

Using Selenium with ios-driver to test iOS mobile apps from a Windows machine

I am investigating the feasibility of testing native, hybrid, and web-based applications using Selenium for Windows (web only), Android, and iOS mobile devices (e.g. iPad).
The ideal setup for a tester would be a Windows machine with physical devices connected via USB. This works with Android as all that is needed (excluding the ADK and USB driver setup) is Selendroid's stand-alone server and a JAR dependency. However, from my understanding, this is not possible with iOS mobile devices using ios-driver. I have also checked out Appium, and they too state that a Mac computer would be needed to test iOS devices.
So that brings us to my question: Is there a way to test iOS mobile apps (web, hybrid, native) from a Windows machine?
Here is a list of preferences:
- Use Selenium and other Selenium-compatible plug-ins
- Run tests from Windows machine
- Cannot use iOS VM
- Cannot use Mac machine with "middle-man" application to communicate with Windows machine
- Have to test physical mobile devices
- No "hacks" (e.g. Jailbreaking)
It is also safe to assume that I have no experience developing iOS applications.
It is possible to run the tests from a Windows machine but not the way you are probably thinking. You will still need a Mac. Here are the requirements:
A mac on your network with Appium server running
Has Appium environment installed properly
Has the .app on the machine
If you have these three requirements fulfilled and there is no firewall blocking network access to the Mac then you can do it. You will have to actual tests on the Windows machine but instead of specifying 127.0.0.1:8080 in the setup method as the IP address of Appium server you will replace it with this: yourmacsipaddress:8080 and this should execute the test properly.
Remember that you have to specify the path of the .app in the test which is running from your Windows machine. But the catch is that the path has to be the path of the .app in the Mac and not on your Windows machine.
So the tests will run from your Windows machine but the installation of the app, the automation, and the testing will be done on the Mac but you will get the "pass" or "fail" update on your Windows machine.
If you do not want to set up appium in your local machine, You can also go with sauce lab.
sauce lab provide vm to you. select appropriate device and run using appiumDriver. Provide below capabilty and run using appiumDriver. your remote url will be like this
http://your_username:your_access_key#ondemand.saucelabs.com:80/wd/hub
For iOS Native,
{"driver.class":"io.appium.java_client.ios.IOSDriver","platformName":"iOS","browserName":"","platformVersion":"your os version","deviceName":"device Name","appiumVersion":"1.5.3","app":"sauce-storage:Your application name on sauce storage"}
Your application should be available on sauce storage. You can upload using sauce api .
You can also use this same for web application, android/ ios native application.

How to make a struts2 project an executable Application

I have developed a Struts2 Project using Apache server and MySQL database.
Is it possible to make this application an executable application so that i do not need to give JDK, Apache and MySQL separately to the user. The installer could install all these 3 itself.
Also can i make this so that only a single user can use this application. How Please Tell.
Usually a Web Application has a central server (with at least: a Java Virtual Machine, a Web Server / Application Server, a Database, and the Web Application contanining the Java code), and all the client computers use their browsers to connect to it.
The kind of application that seems to arise from your description is a monolitic one, like a GUI App made in Swing or in Visual Basic; you install it in the clients, and each one has a copy of each component. If you install it 20 times, you will have 20 database, 20 copies of the files, etc...
Even in client-server applications, with centralized database and distributed code, the problems were always client-related; you can't know if the system were you are automatically installing a database, an JDK etc... already has that software, maybe in other versions, or has the environment variables messed up etc. When you need to update the software, or to tune up the system, you need to be physically log to that pc, remotely or by person. This are some of the reasons that led to the choice of preferring Web Applications to distributed applications.
If you need to craft a "package" of your application to be installed in one click by a dumb user (let's say, a portable version of your application, to let your PM perform some Demo in remote locations, or to give it to the big boss to let him see it), you should really evaluate the possibility of creating a Virtual Machine.
A Virtual Machine is a big file (on a hard disk, or read by an USB key, etc) that, once mounted by a Virtualization Software (usually the same software that created the Virtual Machine), will run an entire new OS inside a window of your guest OS.
The leading software to do this is VMWare (the Player is free and cross-platform), alternatively you can use VirtualBox.
Then, you need to
download VMWare Player
download the ISO of your favourite Linux distribution (I hope you don't use Windows as server)
create a, let's say, 10GB partition for your Linux distribution with VMWare Player, and mount it
plug the ISO with something like (the free edition of) Daemon Tools
install the Linux distribution
install and configure all the software you need there (Apache, MySQL, your favourite browsers, etc; JVM usually is already there)
install your web application
Then you will have a physical file with a complete Linux OS inside, with all the needed software already tuned up: just distribute this file to Windows, Mac or Linux users, they will only need the VMWare Player installed to run your file and access (their copy of) your application inside the Linux OS.

Resources