about summary refs log tree commit diff
path: root/nixpkgs/nixos/doc/manual/development/running-nixos-tests.xml
blob: e9257c907daf32b8bc42968f4d586887a2f350bc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<section xmlns="http://docbook.org/ns/docbook"
        xmlns:xlink="http://www.w3.org/1999/xlink"
        xmlns:xi="http://www.w3.org/2001/XInclude"
        version="5.0"
        xml:id="sec-running-nixos-tests">
 <title>Running Tests</title>

 <para>
  You can run tests using <command>nix-build</command>. For example, to run the
  test
  <filename
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/nixos/tests/login.nix">login.nix</filename>,
  you just do:
<screen>
<prompt>$ </prompt>nix-build '&lt;nixpkgs/nixos/tests/login.nix>'
</screen>
  or, if you don’t want to rely on <envar>NIX_PATH</envar>:
<screen>
<prompt>$ </prompt>cd /my/nixpkgs/nixos/tests
<prompt>$ </prompt>nix-build login.nix
…
running the VM test script
machine: QEMU running (pid 8841)
…
6 out of 6 tests succeeded
</screen>
  After building/downloading all required dependencies, this will perform a
  build that starts a QEMU/KVM virtual machine containing a NixOS system. The
  virtual machine mounts the Nix store of the host; this makes VM creation very
  fast, as no disk image needs to be created. Afterwards, you can view a
  pretty-printed log of the test:
<screen>
<prompt>$ </prompt>firefox result/log.html
</screen>
 </para>
</section>