summary refs log tree commit diff
path: root/nixos/doc/manual/from_md/development/running-nixos-tests.section.xml
blob: 7159b95b22b0194a6cb8b72c21e273db401ae2f8 (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
<section xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="sec-running-nixos-tests">
  <title>Running Tests</title>
  <para>
    You can run tests using <literal>nix-build</literal>. For example,
    to run the test
    <link xlink:href="https://github.com/NixOS/nixpkgs/blob/master/nixos/tests/login.nix"><literal>login.nix</literal></link>,
    you just do:
  </para>
  <programlisting>
$ nix-build '&lt;nixpkgs/nixos/tests/login.nix&gt;'
</programlisting>
  <para>
    or, if you don’t want to rely on <literal>NIX_PATH</literal>:
  </para>
  <programlisting>
$ cd /my/nixpkgs/nixos/tests
$ nix-build login.nix
…
running the VM test script
machine: QEMU running (pid 8841)
…
6 out of 6 tests succeeded
</programlisting>
  <para>
    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:
  </para>
  <programlisting>
$ firefox result/log.html
</programlisting>
</section>