2016-05-26 9 views
3

Mein Modul Struktur ist dies.Puppet Code Coverage Test mit rspec

install_logging 
├── files 
│ └── install_logging.sh 
├── Gemfile 
├── Gemfile.lock 
├── manifests 
│ ├── \ 
│ ├── empty.rb 
│ └── init.pp 
├── Modulefile 
├── Rakefile 
├── README 
├── spec 
│ ├── chkcls_sec.rb 
│ ├── classes 
│ │ ├── init1_spec.rb 
│ │ ├── init_spec.rb 
│ │ └── spec_helper.rb 
│ ├── coverage_spec.rb 
│ ├── defines 
│ ├── fixtures 
│ │ ├── manifests 
│ │ │ └── site.pp 
│ │ └── modules 
│ │  └── install_logging 
│ │   ├── files -> ../../../../files 
│ │   ├── manifests -> ../../../../manifests 
│ │   └── templates -> ../../../../templates 
│ ├── functions 
│ ├── hosts 
│ └── spec_helper.rb 
├── templates 
│ └── agent.sh.erb 
└── tests 
    └── init.pp 

Manifeste/init.pp Dateicode.

class install_logging { 
    file { '/tmp/install_logging.sh': 
    ensure => 'present', 
    mode => '0644', 
    source => 'puppet:///modules/install_logging/install_logging.sh' 
    }-> exec { 'Install Logging Agent': 
    provider => shell, 
    command => 'bash /tmp/install_logging.sh', 
    logoutput => on_failure, 
    } 
} 

$ua_module_name = 'VivekMishra01/Google_Cloud_Logging1' 
$ua_module_version = "${ua_module_name}/1.1.0" 

file { '/tmp/agent.sh': 
    ensure => file, 
    mode => '0755', 
    content => template('gcloudsdk/agent.sh.erb'), 
    require => Exec['Remove Components'], 
}-> exec { 'Agent': 
    provider => shell, 
    command => 'sh /tmp/agent.sh', 
    logoutput => on_failure, 
} 

spec/classes/init_spec.rb Datei Code

require 'spec_helper' 
describe 'contains install_logging' do 
    it { File.exist?('File.join(File.dirname(__FILE__),init.pp)') } 
end 
at_exit { RSpec::Puppet::Coverage.report! } 

Dies ist, was ich zu tun versuchen.

[email protected]:/home/vivekkumarmishra17/Mymodule/install_logging# rspec spec/classes/init_spec.rb 
. 
Finished in 0.00164 seconds (files took 0.59198 seconds to load) 

    1 example, 0 failures 
    Total resources: 0 
    Touched resources: 0 
    Resource coverage: NaN% 
    Untouched resources: 

Problem ist, dass es keine Ressource finden kann, obwohl 1 Beispiel erfolgreich getestet wurde.

Total resources: 0 
    Touched resources: 0 
    Resource coverage: NaN% 
    Untouched resources: 

Jede Hilfe wird sehr geschätzt. Vielen Dank.

+0

Willkommen bei SO. Überprüfen Sie Ihre Frage und korrigieren Sie die Formatierung, damit sie besser lesbar ist. Sie haben Kommentare in Ihrem Code und unformatierte Befehlszeilenausgaben. Der Aufwand, den Sie in die Bearbeitung Ihrer Frage gesteckt haben, zahlt sich aus. Wenn Sie uns die notwendigen Informationen geben, helfen Sie uns auch. Lesen Sie "[ask]" einschließlich der Links und "[mcve]". –

Antwort

0

Verwenden Sie bitte die Puppet Development Kit, um Ihre Module und Klassen zu generieren. Das PDK erstellt dafür Arbeitseinheitstests.

Zum Schreiben von Komponententests mit rspec-puppet, beziehen Sie sich bitte auf die docsite, in diesem Fall speziell auf testing classes und resources.