summaryrefslogtreecommitdiff
path: root/7f/b9d7259da046655373dbb25dfefbc7b72b02b4
blob: 0abbcf7babd3c340c23b8d5a2523317744c5a9cc (plain)
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
Return-Path: <leishman3@gmail.com>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
	[172.17.192.35])
	by mail.linuxfoundation.org (Postfix) with ESMTPS id 763B4CE5
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Wed, 21 Aug 2019 17:33:43 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.7.6
Received: from mail-qt1-f178.google.com (mail-qt1-f178.google.com
	[209.85.160.178])
	by smtp1.linuxfoundation.org (Postfix) with ESMTPS id B781489E
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Wed, 21 Aug 2019 17:33:40 +0000 (UTC)
Received: by mail-qt1-f178.google.com with SMTP id 44so3980165qtg.11
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Wed, 21 Aug 2019 10:33:40 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
	h=mime-version:references:in-reply-to:from:date:message-id:subject:to; 
	bh=2mKGueCl0ZOF4hqiw07lnfW0j+GofJi1wy51ugpLW/8=;
	b=Z7od1lqmHAvSwyPTMpkk/nVRS37Fts9VgS6VoM2/kp23w/Ac6SyZN/9rN3hJpyZfMs
	0elujMmXKhDLMBfJzDLbRbMaLWcLphTP/YTV6DwwTY37l+RWsnWxHzJQObbpEIIAJY0+
	eFnJNZX0tGBfG3XLkBjRNPM5uy1RgjvWuyworp6pzL0+HjM+4HfUCRn6ac45U7ZvTNFh
	q6dKt7kkxCwEBaLoTxW2dAUnnVmNnu92fyL+8ZKx8FbVV60FHffZmmYBdju9Mjc8W5+5
	2NMesEBFilOB3QRPrEwFhLh6XTBTUOCL7av4xv4vBKJ01eku8FmMXXnHpWgSlwwfDeKN
	GTIg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20161025;
	h=x-gm-message-state:mime-version:references:in-reply-to:from:date
	:message-id:subject:to;
	bh=2mKGueCl0ZOF4hqiw07lnfW0j+GofJi1wy51ugpLW/8=;
	b=nq7qeWtKk9bk+L3JD/RUMMPxc8NH/LWKcdvdDDcTAC5qd+EAjLq2t1uxNVdkHdxbq2
	DWjQfMFb1fvHV1lKSp+j5pqEwfm3Ba6zAn5wuoIvyQnb5I7dMcs/nVhOSKYvNSRzMEA0
	4jT4aDWZAb5quAqzrpgLiJ+Fy50UJ7n/OzfwmzC8t79JZdLMdtq3nUSDu1ot1BlWVzqy
	rp3AIand9b6Y1mC6wyDcR2rAQM9op5SbT9u9BSkUAe6AMdqdbDyghOsEOxw1ojMekpv/
	k+RnSl9Jltf+m9B022ymhuK3AbwYL7kOer4h5/97FoU+eBMorajmreWDg2GzhHOfLTms
	o+7g==
X-Gm-Message-State: APjAAAUOOWVwxP96dnoGUDlCyhsMUIWqEbHMXJSdRmHS4hnHGOyDz8/+
	QDHQP08DCXfjvkLAs1qKiYOMUX/Z9Vx65zyuB0kd7itTnSI=
X-Google-Smtp-Source: APXvYqyYMd0qpqSGu4h23qsl9Jj+nE0hESILeNqfIfG6ELH4teMvlnmYz/FxBqT36cae1XWF5ZJQ+tLcOGvesnFdclY=
X-Received: by 2002:ac8:6105:: with SMTP id a5mr31919143qtm.285.1566408819690; 
	Wed, 21 Aug 2019 10:33:39 -0700 (PDT)
MIME-Version: 1.0
References: <AM0PR07MB54748379B8B41BA5023F46CAE9D50@AM0PR07MB5474.eurprd07.prod.outlook.com>
	<AM0PR07MB54744DA07A130BFB8B0C65DAE9AA0@AM0PR07MB5474.eurprd07.prod.outlook.com>
In-Reply-To: <AM0PR07MB54744DA07A130BFB8B0C65DAE9AA0@AM0PR07MB5474.eurprd07.prod.outlook.com>
From: Alexander Leishman <leishman3@gmail.com>
Date: Wed, 21 Aug 2019 10:33:28 -0700
Message-ID: <CABW94zRu+wo5KKczMiTwG6GXt+icThTVN4oh62BykVFk_hueQQ@mail.gmail.com>
To: Niels Thijssen <niels.thijssen@improveqs.nl>, 
	Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
Content-Type: multipart/alternative; boundary="00000000000045564f0590a3f906"
X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,
	DKIM_VALID,DKIM_VALID_AU,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,
	HTML_MESSAGE,RCVD_IN_DNSWL_NONE autolearn=no version=3.3.1
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on
	smtp1.linux-foundation.org
X-Mailman-Approved-At: Wed, 21 Aug 2019 17:37:19 +0000
Subject: Re: [bitcoin-dev] testing bitcoin nodes
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>,
	<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Wed, 21 Aug 2019 17:33:43 -0000

--00000000000045564f0590a3f906
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hey Niels,


I'm no expert on bitcoind tests, but maybe these bits of information can
help you get started:


The steps to build bitcoind typically involve running:


./autogen.sh

./configure

make

make install


When you run autogen, the autoreconf
<https://www.gnu.org/software/autoconf/manual/autoconf-2.68/html_node/autor=
econf-Invocation.html>
tool
is invoked which creates the configure script that gets run next. The
configure script is generated based on the configure.ac
<https://github.com/bitcoin/bitcoin/blob/master/configure.ac> file, which
performs a number of compatibility checks for the compiler and other
tooling. You can see these checks being performed with
the AX_CHECK_COMPILE_FLAG calls.


My understanding is that running configure does a lot of system
compatibility checks. When you run "make", I do not think any tests get run
by default, but I could be wrong about this. If you want to run unit tests
you need to run "make check". You can read more about this here
<https://github.com/bitcoin/bitcoin/blob/master/src/test/README.md>


There are unit tests for bitcoind written in C++ and a lot of integration
and higher level tests written in python.


Hopefully this information was useful and accurate. Again, I could be wrong
about exactly how the build process works as it's not super obvious.
Hopefully someone else more knowledgeable than me can chime in here if I
got anything wrong.


Best,

Alex



On Wed, Aug 21, 2019 at 10:06 AM Niels Thijssen via bitcoin-dev <
bitcoin-dev@lists.linuxfoundation.org> wrote:

>
> As no one was able to respond, a gentle reminder : =F0=9F=98=8A
>
> Hi,
>
> I'm working as (software) test specialist and run private a full bitcoin
> node (based upon Raspberry Pi 4).
> I've been trying to figure out the tests performed during
> installation/upgrade/compilation of the software for the node.
> Is there any overview on what's the (common) test approach, or other
> stuff. Because the tests on GitHub don't help me that much.
> I'd like to figure out what/how is tested, maybe refine test cases, and
> try some manual test also, as part of learning.
>
> Who would be able to join me or share information that guides me.
> Thanks in advance,
>
> Niels.
>
>
>
> -------- Disclaimer --------
> This email and any files transmitted may contain proprietary and
> confidential information of Improve Quality Services B.V. (=E2=80=98Impro=
ve QS=E2=80=99)
> and is intended only for the (use of the) named recipient(s) above. If yo=
u
> have received this message in error or are not the intended or named
> recipient(s) of this message, please immediately notify the sender by
> return and delete this email message from your computer. Any views or
> opinions presented are solely those of its author and do not necessarily
> represent those of Improve QS. You are hereby notified that unauthorized
> disclosure, use, dissemination, forwarding, printing or copying of this
> e-mail and its attachments either whole or partial of its contents is
> strictly prohibited. Improve QS cannot guarantee that email communication=
s
> are secured and error-free and does not accept any liability for damages
> resulting from the use of email. The general terms and conditions of
> purchase respectively sale and delivery of Improve QS are applicable to a=
ll
> transactions and undertakings resulting therefrom.
>
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
>

--00000000000045564f0590a3f906
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">





<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;">Hey Niels,</p>
<p class=3D"gmail-p2" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;;min-height:14px"><br></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;">I&#39;m no expert on bitcoind =
tests, but maybe these bits of information can help you get started:</p>
<p class=3D"gmail-p2" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;;min-height:14px"><br></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;">The steps to build bitcoind ty=
pically involve running:</p>
<p class=3D"gmail-p2" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;;min-height:14px"><br></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;">./autogen.sh</p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;">./configure</p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;">make</p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;">make install</p>
<p class=3D"gmail-p2" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;;min-height:14px"><br></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;">When you run autogen, the=C2=
=A0<a href=3D"https://www.gnu.org/software/autoconf/manual/autoconf-2.68/ht=
ml_node/autoreconf-Invocation.html"><span class=3D"gmail-s1" style=3D"color=
:rgb(220,161,13)">autoreconf</span></a>=C2=A0tool is invoked which creates =
the configure script that gets run next. The configure script is generated =
based on the=C2=A0<a href=3D"https://github.com/bitcoin/bitcoin/blob/master=
/configure.ac"><span class=3D"gmail-s1" style=3D"color:rgb(220,161,13)">con=
figure.ac</span></a>=C2=A0file, which performs a number of compatibility ch=
ecks for the compiler and other tooling. You can see these checks being per=
formed with the=C2=A0AX_CHECK_COMPILE_FLAG calls.<span class=3D"gmail-Apple=
-converted-space">=C2=A0</span></p>
<p class=3D"gmail-p2" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;;min-height:14px"><br></p>
<p class=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-=
variant-east-asian:normal;font-stretch:normal;font-size:12px;line-height:no=
rmal;font-family:&quot;Helvetica Neue&quot;">My understanding is that runni=
ng configure does a lot of system compatibility checks. When you run &quot;=
make&quot;, I do not think any tests get run by default, but I could be wro=
ng about this. If you want to run unit tests you need to run &quot;make che=
ck&quot;. You can read more about this <a href=3D"https://github.com/bitcoi=
n/bitcoin/blob/master/src/test/README.md">here</a></p><p class=3D"gmail-p1"=
 style=3D"margin:0px;font-variant-numeric:normal;font-variant-east-asian:no=
rmal;font-stretch:normal;font-size:12px;line-height:normal;font-family:&quo=
t;Helvetica Neue&quot;"><br></p><p class=3D"gmail-p1" style=3D"margin:0px;f=
ont-variant-numeric:normal;font-variant-east-asian:normal;font-stretch:norm=
al;font-size:12px;line-height:normal;font-family:&quot;Helvetica Neue&quot;=
">There are unit tests for bitcoind written in C++ and a lot of integration=
 and higher level tests written in python.</p><p class=3D"gmail-p1" style=
=3D"margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;f=
ont-stretch:normal;font-size:12px;line-height:normal;font-family:&quot;Helv=
etica Neue&quot;"><br></p><p class=3D"gmail-p1" style=3D"margin:0px;font-va=
riant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;fon=
t-size:12px;line-height:normal;font-family:&quot;Helvetica Neue&quot;">Hope=
fully this information was useful and accurate. Again, I could be wrong abo=
ut exactly how the build process works as it&#39;s not super obvious. Hopef=
ully someone else more knowledgeable than me can chime in here if I got any=
thing wrong.</p><p class=3D"gmail-p1" style=3D"margin:0px;font-variant-nume=
ric:normal;font-variant-east-asian:normal;font-stretch:normal;font-size:12p=
x;line-height:normal;font-family:&quot;Helvetica Neue&quot;"><br></p><p cla=
ss=3D"gmail-p1" style=3D"margin:0px;font-variant-numeric:normal;font-varian=
t-east-asian:normal;font-stretch:normal;font-size:12px;line-height:normal;f=
ont-family:&quot;Helvetica Neue&quot;">Best,</p><p class=3D"gmail-p1" style=
=3D"margin:0px;font-variant-numeric:normal;font-variant-east-asian:normal;f=
ont-stretch:normal;font-size:12px;line-height:normal;font-family:&quot;Helv=
etica Neue&quot;">Alex</p><p class=3D"gmail-p1" style=3D"margin:0px;font-va=
riant-numeric:normal;font-variant-east-asian:normal;font-stretch:normal;fon=
t-size:12px;line-height:normal;font-family:&quot;Helvetica Neue&quot;"><br>=
</p></div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_at=
tr">On Wed, Aug 21, 2019 at 10:06 AM Niels Thijssen via bitcoin-dev &lt;<a =
href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org">bitcoin-dev@lists.lin=
uxfoundation.org</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" =
style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);pa=
dding-left:1ex"><br>
As no one was able to respond, a gentle reminder : =F0=9F=98=8A<br>
<br>
Hi,<br>
<br>
I&#39;m working as (software) test specialist and run private a full bitcoi=
n node (based upon Raspberry Pi 4).<br>
I&#39;ve been trying to figure out the tests performed during installation/=
upgrade/compilation of the software for the node.<br>
Is there any overview on what&#39;s the (common) test approach, or other st=
uff. Because the tests on GitHub don&#39;t help me that much.<br>
I&#39;d like to figure out what/how is tested, maybe refine test cases, and=
 try some manual test also, as part of learning.<br>
<br>
Who would be able to join me or share information that guides me.<br>
Thanks in advance,<br>
<br>
Niels.<br>
<br>
<br>
<br>
-------- Disclaimer --------<br>
This email and any files transmitted may contain proprietary and confidenti=
al information of Improve Quality Services B.V. (=E2=80=98Improve QS=E2=80=
=99) and is intended only for the (use of the) named recipient(s) above. If=
 you have received this message in error or are not the intended or named r=
ecipient(s) of this message, please immediately notify the sender by return=
 and delete this email message from your computer. Any views or opinions pr=
esented are solely those of its author and do not necessarily represent tho=
se of Improve QS. You are hereby notified that unauthorized disclosure, use=
, dissemination, forwarding, printing or copying of this e-mail and its att=
achments either whole or partial of its contents is strictly prohibited. Im=
prove QS cannot guarantee that email communications are secured and error-f=
ree and does not accept any liability for damages resulting from the use of=
 email. The general terms and conditions of purchase respectively sale and =
delivery of Improve QS are applicable to all transactions and undertakings =
resulting therefrom.<br>
<br>
_______________________________________________<br>
bitcoin-dev mailing list<br>
<a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org" target=3D"_blank">=
bitcoin-dev@lists.linuxfoundation.org</a><br>
<a href=3D"https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev" =
rel=3D"noreferrer" target=3D"_blank">https://lists.linuxfoundation.org/mail=
man/listinfo/bitcoin-dev</a><br>
</blockquote></div>

--00000000000045564f0590a3f906--