I'm trying to set up continuous integration testing for a Windows Store (8.1) app on Visual Studio Team Services (formerly Visual Studio Online).
Setting up build was fairly easy, but I have not been able to get it to run my unit tests on a Hosted Agent. So far I have:
Added /t:Publish to the build to produce the test runner .appx
Created a Powershell script to install the appropriate certificates onto the agent
Modified the test search path to find the .appx
Now, I'm getting errors about installing a developer license:
Error: Could not start test run for unit tests for Windows Store app: No valid developer license found for running unit tests for Windows Store apps. Please install/renew your developer license..
It does not appear to be possible to add a developer license strictly from Powershell or Command Prompt, so is there some other way of running the tests on a Hosted Agent?
Assuming you are using vNext build and Universal Windows Platform template by following this article.
As the developer license is deprecated in the Windows 10 operating system, Universal Windows Platform template doesn't require developer license. But if the computer that hosts the build agent will be used to perform unit tests for windows 8.x, developer license must be installed on the computer.
So, there is no way to run tests for Windows 8.1 on Hosted Agent. You need to deploy a Windows build agent or set up an on-premises build controller + build agent to test Windows 8.1 application.
Related
I am using Visual Studio 2013 Professional (with a Store developer account connected) and I have a Windows 8.1 Lenovo tablet for which I'd like to try developing Store apps.
I am stuck right now because when I connect my tablet to my laptop (which has Visual Studio) using the USB port, and open "Windows Phone Development Registration" tool, my Windows tablet device is not recognized by it.
Any help in letting me know what I am missing would be greatly apprciated.
Thanks.
Windows systems aren't locked in the same way as Windows Phones are. You will need a free developer license to run development & test packages on the system, but don't need to use an external tool to generate it.
You can install a developer license with PowerShell by using the "Show-WindowsDeveloperLicenseRegistration" cmdlet. If you create a package for testing in Visual Studio then the Add-AppDevPackage.ps1 script will request the developer license if the system doesn't already have one.
Visual Studio will also request a license for you if you run it on the local system or if you launch the app via the remote debugger.
Documentation links:
Run Windows Store apps on a remote machine from Visual Studio, Deploy Windows Store apps from Visual Studio and Get a developer license (Store apps)
It works a bit different with tablets than with phones. If you don't need debugging - you can simply copy the appx onto the tablet and install it there. If you want to debug - you need to install remote debugging tools on it and specify in VS that you want to debug on a remote machine (click the little drop down arrow on the button here:
How can I watch logs from windows phone 8.1. (for instance like for Android by using SDK, or for iOs by using xCode)
The Visual Studio Output Windows is handy if you are debugging your app but you cannot see/collect the logs in another moment.
I recommend the use of MetroLog, a lightweight logging system designed specifically for Windows Store and Windows Phone apps.
You can install it using NuGet
Install-Package MetroLog
Here's an quick example:
using MetroLog;
using MetroLog.Targets;
LogManagerFactory.DefaultConfiguration.AddTarget(LogLevel.Trace, LogLevel.Fatal, new FileStreamingTarget());
ILogger log = LogManagerFactory.DefaultLogManager.GetLogger<MainPage>();
log.Trace("This is a trace message.");
You can find a tutorial explaining how to add it on your project at http://talkitbr.com/2015/06/11/adicionando-logs-em-universal-apps. Also there is an explanation regarding retrieving these logs.
I have created a windows Phone application, and how do I give this application to the client, Do I give him my project folder i.e Getcontacts? and also client wants to install this application to emulator because in the client machine only emulator is installed.
Is there any way to create the install file of the application that I give to the client and client will easily install into the emulator. Kindly suggest me on these queries..
Waiting for your reply.
Thanks.
If the client has the emulator installed, he can deploy a XAP to it using 'Application Deployment' (open the start menu and type Application Deployment). You can select the target (one of the emulators) and then choose the XAP file.
On your end, set the build configuration to Release and build the solution. Then navigate to the project folder/Bin/Release and that's where you will find the .xap that you need to send to your client.
Here's an MSDN article for the Application Deployment tool: http://msdn.microsoft.com/en-us/library/windowsphone/develop/ff402565(v=vs.105).aspx#BKMK_tool
To test the app your client need to be a registered developer(He need to create developer account on Microsoft developer.
To Access Application Deployment tool your client needs to install Windows Phone SKD
then launch Application Deployment tool from installed SDK folder
C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Tools\XAP Deployment\XapDeploy.exe
OR launch it from start menu by typing Application Deployment.
Now he just need to give the path of the xap file(debug or release version) and select the desired testing target.
P:S. you can also deploy the app on app store and set publish version to beta for testing the app at any device without having developer account and installing windows phone SDK.
I used Windows8 Release Preview and Visual Studio2012 RC to develop my windows8-style application, And I want to run my application on another machine(client).They have windows8 Release Preview on their machine . So here my question are:
Are they need to install any other software like Visual Studio2012
and .NetFramework4.5 on their machine or not?
Can anyone give me some helpful information related to client's
machine requirements to run metro app successfully?
Thank you.
Are they need to install any other software like Visual Studio2012 and .NetFramework4.5 on their machine or not?
You can test it with PowerShell, it may require .net framework to install and for detailed information follow the links below.
Refer these:
How to deploy a Metro App to the Desktop?
Will Metro-style applications be able to be installed outside the market frame?
Deploying Metro style apps to non-development systems
Sharing an app package locally (Metro style apps)
Deploying Windows Metro style apps from Visual Studio
Can anyone give me some helpful information related to client's machine requirements to run metro app successfully?
Check the Edit Section of the answer and the reference video in the another answer for your second query.
Supporting a Metro style Device App
Hope this help you explore about the metro app deployment.
You can also configure your machines to do remote debugging if you want. This is useful if your development machine is a traditional laptop or desktop but you want to debug your app running on a slate that has an accelerometer, GPS, multi touch, etc.
http://msdn.microsoft.com/en-us/library/bt727f1t.aspx has information on how to get that set up.
Can I develop my custom private Metro-style applications and deploy them directly to my customers, bypassing the market?
Will I be able to provide my customers with their custom-made applications in Metro-style?
For instance, in Android you can transfer an APK file.
On Technet there's an article on sideloading Metro style applications. Basically, the requirements are as follows:
The application must be cryptograhically signed.
The computer it will be installed to must trust the signing certificate.
The Allow all trusted applications to install group policy setting must be enabled.
To run the application the computer must be joined to a domain.
As long as your customers are in enterprise environment these requirements shouldn't be a problem. Outside enterprise environment you'll need to distibute your apps through the Windows store.
At least with the Consumer Preview of Windows 8 the sideloading also works on machines with a valid developer licence. I couldn't find any official info on that but this might stay the case with the final release as well for the purpose of testing the apps.
EDIT:
Some additional info has just been published. Key points:
Sideloading will be enabled in Windows 8 Enterprise Edition and Windows 8 Server editions. It is also currently enabled in both Windows 8 Consumer Preview and Windows Server 8 Beta.
In other editions of Windows 8 a special product key will need to be activated to enable sideloading. It might not be necessary for the computer to be joined to a domain in this case.
Sort of … not really.
Windows 8 Enterprise edition will have the ability to side-load Metro-style apps. The idea is that you can deploy an internal app to your enterprise. The implication is that non-enterprise editions that will come with your consumer/retail PC or tablet will likely not support side-loading of Metro-style apps.
See No escape from the store for the plebs!.
I don't see why not. I've played with the Visual Studio 11 beta on Windows 8, and one of the templates is for a Metro app. It was just a .NET executable. So, as long as you can deploy that to your machines just like you do today, there should be no problem.