What do you like best?

Unlike other CI services, AppVeyor has Windows-based infrastructure, which allows me to test my software on all major platforms. Setting up projects with appveyor.yml is straightforward and matches with how other similar non-Windows based services do configuration.

Appveyor's Python support is impressive as it offers several different Python versions including both 32 and 64 bit versions of Python, and Miniconda-based Python installations. The documentation associated with the Python environment is also well done and contains the information you need to get your builds running quickly.

What do you dislike?

Builds can be slow in the free version that does not allow concurrent jobs. The paid option allowing concurrent jobs is too expensive. While AppVeyor allows your to change what your configuration file is named, it does annoy me that the default is appveyor.yml, rather than a file prepended with a dot to make it hidden.

Recommendations to others considering the product

I would find it difficult to justify the expense of the Premium plan, but for open source projects, AppVeyor is great. If the lack of concurrent jobs is an issue, I would recommend limiting the number of tests that you run with AppVeyor. Do your detailed testing and generate coverage reports with another faster CI and use AppVeyor to ensure that your basic tests run in 32 and 64 bit Windows.

What business problems are you solving with the product? What benefits have you realized?

Windows is likely the most commonly used platform for our users, yet all of our developers use Mac OS X or Linux. AppVeyor ensures that our products still work in Windows without having to have a dedicated Windows build machine.

Sign in to G2 Crowd to see what your connections have to say about AppVeyor

What do you like best?

Well, Firstly, its free for open source projects. A good CI build that includes build, test, and deploy means that you don't have to fear your code. When compared to Travis CI which is expensive for active projects, artifacts here are easily available. However for database CI AppVeyor has the major advantage that it comes with a SQL Server database on the build agents by default. This significantly simplifies the setup and avoids the need to provision, setup and teardown database virtual machines on each build.

What do you dislike?

1. Its slow compared to Travis CI.

2. Platform Development!- Works for only windows! It would be good to have all in one place( for linux users).

3. Free accounts have slow build.

Recommendations to others considering the product

It's quite easy to use. However the documentation isn't good, only source of info is reviews and forums.

Support is really helpful, and often they will implement things that are missing and preventing you from moving forward.

What business problems are you solving with the product? What benefits have you realized?

1. Windows users do not need to face any problems as the python packages undergo automatic regression testing with AppVeyor.

What do you like best?

The best feature of AppVeyor is they allow *any* artefacts to be captured from the build and downloaded easily from Appveyor. This is a big feature over Travis, which has a recipe for using Amazon S3 to store artefacts, but that turns out to be quite expensive for very active projects.

What do you dislike?

No support for Github organisation authorisation.

Slow builds for free accounts.

Protection of environment variables is sub-optimal. Several times a command has failed and Appveyor has dumped out all variables, including passwords, to the log. As the log is on the net, the log then needs to be deleted.

Recommendations to others considering the product

Be *very* careful with putting passwords in environment variables. Appveyor likes dumping them to the log if there is a problem with a command.

Avoid cmd scripts like the plague.

Create build logic as .ps1 scripts.

For Python, use the demo project's appveyor.yml: https://github.com/ogrisel/python-appveyor-demo

For coverage, use https://codecov.io/ instead of https://coveralls.io/ , works very well with Appveyor, but also integrated with Travis - it merges coverage data from Appveyor and Travis together, allowing cross-platform coverage data. coveralls.io fails badly in this scenario.

What business problems are you solving with the product? What benefits have you realized?

I primarily work on Pywikibot, a framework for automated maintenance of wikis.

What do you like best?

We've been using AppVeyor for over a year. We recently jumped up to 5 concurrent jobs, which really helps speed up our matrix builds. Pricing is simple. Support is superb. I really like that they have an integrated NuGet feed. We use it for build dependences and Chocolatey software installs. Setting up environments to deploy web app builds to Azure App Service is simple. Many developers at our company use AppVeyor for their open source projects too, so they are familiar with it, and some build scripts can be shared.

What do you dislike?

The updates have caused our builds to break a couple of times, but switching back to the previous image was just a single line change in appveyor.yml. At times, it would be useful to control the build image, or at least a layer on top of their's.

Recommendations to others considering the product

Definitely try it out. Take a look at many of the open source projects are currently using it. Just search for appveyor.yml in GitHub.

What business problems are you solving with the product? What benefits have you realized?

We use it for building all our software, automated testing (unit and some integration), continuous deployment, and all other deployments.

What do you like best?

Language and framework support. Every problem that I have with travis, appveyor solves it. I tried a c++ project and setting it up to use a proper compiler was a breeze as appveyor comes with standard msvc and mingw compiler suites, ruby, python and most common languages are well supported. Builds started almost right away and showed up in the console whenever I pushed to github and the builds were very fast too. The web-ui is pretty slick and barebones, but it works for most of the cases. It mails your registered email address with latest build results.

What do you dislike?

Obviously, platform support. It works only well for windows. As it is right now, you have to use travis for linux/osx AND appveyor for windows.

Recommendations to others considering the product

As with any CI systems, try it with a sample project first. It is easier than travis, as the same project took me a lot less to setup in appveyor so there is that. If you need to have cross-platform/windows build support, currently appveyor seems the only way.

What business problems are you solving with the product? What benefits have you realized?

I just need to push to github and appveyor will start the build/test procedure right away, informing me the results via mail. This also negates the need to state current build status in readme as it can be seen directly form the ci badge.

What do you like best?

4. Very good integration with everything Windows - Nuget, Visual Studio, Azure and well documented.

What do you dislike?

1. Windows-only - A really cross-platform free CI server is very necessary to stop writing similar but different config files for separate Windows and linux severs.

2. Much slower compared to Travis CI, which runs multiple test setups in parallel by default.

Recommendations to others considering the product

Quite easy to use, but a bit overwhelming when getting started - Start with a basic appveyor config and start adding build steps one-by-one to get acquainted. Use Nuget to install things, it works just like apt-get for linux.

What business problems are you solving with the product? What benefits have you realized?

Testing and packaging cross-platform Python Modules for open source projects

Benefits -

Before I joined the project, it used to be developed by a linux-only person and so, it was marked as "Not ready for windows" because he couldn't test it on Windows machines. Considering that python itself is so cross-platform, it is sad to see such status alerts on some projects.

After doing some minor Windows fixes, it was very important to do continuous testing on Windows, so that the admin can easily catch if it will fail on Windows, without maintaining such a setup.

Learning about AppVeyor?

* We monitor all AppVeyor reviews to prevent fraudulent reviews and keep review quality high. We do not post reviews by company employees or direct competitors. Validated reviews require the user to submit a screenshot of the product containing their user ID, in order to verify a user is an actual user of the product.